私のアプリでは、私のアプリケーションにウェブAPIからJSONデータを解析するのにalamofireを使用しています。データが読み込まれている間にローディングスピナーを追加したいと思います。Alamofireのローディングスピナー
しかし、唯一の少し上のネットワークアイコンを示している:私は見てきました。どんな助けも素晴らしいだろう。
私のアプリでは、私のアプリケーションにウェブAPIからJSONデータを解析するのにalamofireを使用しています。データが読み込まれている間にローディングスピナーを追加したいと思います。Alamofireのローディングスピナー
しかし、唯一の少し上のネットワークアイコンを示している:私は見てきました。どんな助けも素晴らしいだろう。
アクティビティインジケータビューUIActivityIndicatorView
を探しています。これは手動で追加する必要があります。ストーリーボードに追加してhidesWhenStopped
を有効にして、インジケータが停止しても表示されないようにすることができます。
いずれにしても、要求を開始する前にstartAnimating
を手動で呼び出す必要があります。その後、要求が完了するとstopAnimating
となります。
プログラムでは、このようなものになりますそれをすべて行うには:
// Assuming in the view controller
let activityIndicator = UIActivityIndicatorView(activityIndicatorStyle: .gray) // Create the activity indicator
view.addSubview(activityIndicator) // add it as a subview
activityIndicator.center = CGPoint(x: view.frame.size.width*0.5, y: view.frame.size.height*0.5) // put in the middle
activityIndicator.startAnimating() // Start animating
request.perform { data, error in
activityIndicator.stopAnimating() // On response stop animating
activityIndicator.removeFromSuperview() // remove the view
// ... process data
}
テーブルビューに 'UIActivityIndicatorView'を追加してこのコードを追加しますかTableViewと同じViewControllerに入る – rob
あなたはそれを提案することはできますが、私はそれを提案しません。テーブルビューでは、インジケータがコンテンツとともにスクロールします。コードは似ていますが、テーブルビューはすでにビューであるため、すべてのビュー呼び出しを削除します。たとえば、 "view.addSubview(activityIndicator)"の代わりに "addSubview(activityIndicator)"を呼び出すことになります –
また、テーブルビューとアクティビティインジケータを使って作業するときは、UIRefreshControlを見てください。テーブルビューに設定するプロパティがある場合は、リフレッシュコントロールを作成できます。その後、tv.refreshControl.beginRefreshing()を呼び出します。これは主にリフレッシュするためのプルダウンに使用されます。 –
をあなたはUIActivityIndicatorをお探しですか?あなたはそれを望むところでそれをサブビューとして追加しなければなりません。 –
例を表示できますか? – rob
@robこれを確認してくださいhttp://stackoverflow.com/a/38457815/6433023 Swift 3ではなく、小さな変更を加えることでそれを作ることができます –