2016-06-16 5 views
3

2つのビューコントローラがあります。 View Controller AとView Controller Bを表示します。 View Controller Aのボタンをクリックすると、View Controller Bにプッシュされます。View Controller Aのボタンをクリックすると、View Controller Bをロードするのに時間がかかります。ページ上にいくつかの遅れがあります。コントローラを表示するには時間がかかります

私はあなたがボタンのB・ビュー・コントローラを呼び出すときに、これはここに をクリックしてビューコントローラB.

+1

アップルからの公式文書でありますおそらくView Controller Bに詰まっています。コードを投稿できますか? – ArtSabintsev

+0

私はすべてのコードをviewDidLoadとviewWillAppearにコメントしました。それでも同じ遅れが見られます。しかし、ストーリーボードからコレクションビューを削除すると、問題は解決されます。しかし、私はそれらのコレクションビューが必要です。 –

+2

View Controllerの初期化/読み込み中に何かが起こっています。いくつかのコード例が役立つ唯一の方法です。 – ArtSabintsev

答えて

0

使用上の3つのコレクションビューを使用していますと、あなたのメインスレッドがある https://developer.apple.com/library/ios/documentation/Performance/Reference/GCD_libdispatch_Ref/

dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{ 
     // Background work will here 
     dispatch_async(dispatch_get_main_queue(), ^{ 
      //UI Update will here 
     }); 
    }); 
+1

UIアクション(ボタンをタップ)がバックグラウンドスレッド上にあるのはなぜですか? – Paulw11

+0

dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT、0)、^ { //バックグラウンド動作するここで dispatch_async(dispatch_get_main_queue()、^ { // UI更新)ここで }う。 })。 – PinkeshGjr

+1

はい、OPがバックグラウンドスレッドにディスパッチされている可能性があることを理解していますが、これについては言及していないため、答えは推測に基づいています。十分な評判を得たら、追加情報を求めるコメントを追加することができます – Paulw11

関連する問題