cocoa podsでインポートしたKRProgressHUDを使う。
KRProgressHUDを実装する
※ CocoaPodsの初期設定方法についてはCocoaPodsのインストールと外部ライブラリのインポートの方法をご覧ください。
※ HUDとして有名なSVProgressHUDはXcode11では現在対応していないため、Xcode11に対応しているKRProgressHUDを代替として使うのが良さそうです。
Xcodeを開いた状態で、プロジェクトツリーよりPodsの中にあるPodfileをクリックして内容を編集します。
以下のような形にします。もし他のライブラリを使用している場合には、追記する形で記述しましょう。
# Uncomment the next line to define a global platform for your project
# platform :ios, '9.0'
target 'Frog9' do
# Comment the next line if you don't want to use dynamic frameworks
use_frameworks!
# Pods for Frog9
pod 'KRProgressHUD'
end
ターミナルを開き、「pod install」を実行します。インストールが成功すればOKです。
ViewControllerでKRProgressHUDを使ってみる
まずは、基本的なローディングを表示してみましょう。
import UIKit
import KRProgressHUD
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
KRProgressHUD.show()
}
}
以下のようにぐるぐる回るローディング画面が1行で実現できました。
また、メッセージも追加し、ローディング完了したら実行する処理の書き方は以下のようなもので実現できます。
KRProgressHUD.show(withMessage: "読み込み中") {
print("完了時の処理")
}
他の使い方
「メッセージを表示して消す」という挙動も簡単に実装ができます。表示されるアイコンは用意されているので、コードの記述だけでOKです。
メッセージ
KRProgressHUD.showMessage("メッセージ")
成功
KRProgressHUD.showSuccess()
KRProgressHUD.showSuccess(withMessage: "成功")
お知らせ
KRProgressHUD.showInfo()
KRProgressHUD.showInfo(withMessage: "お知らせ")
警告
KRProgressHUD.showWarning()
KRProgressHUD.showWarning(withMessage: "警告")
エラー
KRProgressHUD.showError()
KRProgressHUD.showError(withMessage: "エラー")
オリジナル画像を挿入
CGSizeが効いていないかもしれませんがカスタムで自分の用意したオリジナル画像を表示させることもできます。
※ 画像はXcodeにインポートしておく
KRProgressHUD.showImage(UIImage(named: "frog9")!, size: CGSize(width: 100, height: 100))
KRProgressHUD.showImage(UIImage(named: "frog9")!, size: CGSize(width: 100, height: 100), message: "メッセージ")
もっと詳しい使用方法についてはGithubを参照ください。