【Swift4】NVActivityIndicatorView(いい感じのインジケータ)をコードで追加する
はじめに
「いい感じのインジケータにしといて」と突然上司に言われた時に、
超初心者でもスムーズにいい感じのインジケータ
を使えたら便利だなという思いで本記事を書きました。
尚、私自身知識激浅なのでご留意ください。
環境
・X-code9.4.1
・Swift4.1
手順
NVActivityIndicatorViewライブラリを導入
ターミナルを開いてcd
コマンドで作成済みのX-codeのプロジェクト「Test(仮)」のある場所(青色のX-codeファイルのある階層)まで移動。
ex)cd Test
pod init
してpodfileを作成。
それ以降のNVActivityIndicatorViewライブラリ導入の手順はこちらの記事にも載っています。
↓も参考にすると◎
iOSライブラリ管理ツール「CocoaPods」の使用方法
pod install
してNVActivityIndicatorViewが使えるようになったら、
TestViewController(インジケータを表示したいViewController)を作成します。
コードでNVActivityIndicatorViewを追加する
実際に書いたコードは以下です。
ボタンを押したときにインジケータが表示されたり止まったりします。
import UIKit
import NVActivityIndicatorView
final class TestViewController: UIViewController {
private var activityIndicatorView: NVActivityIndicatorView!
override func viewDidLoad() {
super.viewDidLoad()
// インジケータの追加
activityIndicatorView = NVActivityIndicatorView(frame: CGRect(x: 0, y: 0, width: 60, height: 60), type: NVActivityIndicatorType.lineSpinFadeLoader, color: UIColor.red, padding: 0)
activityIndicatorView.center = self.view.center // 位置を中心に設定
view.addSubview(activityIndicatorView)
}
@IBAction func pushStartButton(_ sender: UIButton) {
start()
}
@IBAction func pushStopButton(_ sender: UIButton) {
stop()
}
/// インジケータ開始(startメソッドは書かなくてもOKw)
private func start() {
activityIndicatorView.startAnimating()
}
/// インジケータ 停止(stopメソッドは書かなくてもOKw)
private func stop() {
activityIndicatorView.stopAnimating()
}
}
NVActivityIndicatorTypeでは、いろいろなインジケータの種類を指定できます。
参考:【Swift】シンプルでオシャレなNVActivityIndicatorView使ってみた【例のくるくる】
色合い諸々のダサさは置いておいて、インジケータそのものは良さそうな感じです。(動画貼れなかった)
補足
podごにょごにょしてる段階でエラーになってしまったとき
もし、import NVActivityIndicatorView
した段階で、
こんなエラーが出てしまった場合にはprogectをcleanするか、
Link Binay With LibrariesにNVActivityIndicatorViewのライブラリが追加されているか確認。
されていなかったら、+ボタンを押して追加。
それでもダメだったら強めに(optionボタン押しながら)Cleanしましょう・・・。
参考
https://developer.apple.com/documentation/uikit/uiactivityindicatorview
https://qiita.com/ShirataHikaru/items/7872a9692a78129d07f4
Author And Source
この問題について(【Swift4】NVActivityIndicatorView(いい感じのインジケータ)をコードで追加する), 我々は、より多くの情報をここで見つけました https://qiita.com/haru15komekome/items/89112b084b48ebf35689著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .