NSFetchedResultsControllerを介してUITableViewを管理しましたが、NSFetchedResultsControllerがデータを読み込んでいる間、すべてのUIがブロックされました(タップ、スクロールなどは何もできません)。これを解決する解決策はありますか?ありがとう!!!NSFetchedResultsControllerがデータをロードしている間にUIがブロックされました
答えて
アプリケーションのユーザーフレンドリーを行う際に覚えておくことが重要であることの一つがある:あなたがメイン スレッド上の任意の集中的、非UI
関連の計算をしている場合
、あなたが何かをやっています違う!
UI
メインスレッドを作る
はUI
がフリーズしないことを確認します、またはあなたはそれを説明するように、「ブロック」を取得します。したがって、これが発生しないように、NSFetchedResultsController
は別のスレッド上にある必要があります。
NSOperation
は、あなたが説明している問題のために行く方法です。 Hereは、同様のシナリオを説明するチュートリアルとサンプルコード、およびそれを修正する方法です。
希望すること!
それは他の問題の原因と思われます。 –
インターネットからデータをダウンロードし(必要な場合)、コアデータからUITableViewにデータをロードします。 –
素晴らしい!だから、すべての機能をメソッドに入れて、そのメソッドを 'NSOperation'にラップし、それが完了したら' reloadData'を呼び出して、 'UI'がロックされないようにするだけです! – msgambel
- 1. NSFetchedResultsControllerセクションインデックスが間違った行に移動しています
- 2. ダンプが完了しましたが、データがロードされていません
- 3. NSfetchedResultsControllerの変更がUIに反映されない
- 4. 新しいフラグメントをロードしようとしたときに、間違ったフラグメントがロードされています
- 5. iOS4 networkActivityIndicatorVisibleがUIでブロックされました
- 6. Java UIスレッドがブロックされました - メモリ不足エラー
- 7. データがロードされてプロトタイプセルが読み込まれている間に、テーブルビューのアクティビティインジケータが表示される
- 8. データが変更されたときにComboBoxが新しいデータをロードする
- 9. jQuery UIモーダルダイアログボックスがブロックされない
- 10. 親が読み取り時にブロックされている間に子プロセスが終了しました
- 11. プロセスがDelphiで実行されている間にインターフェイスをブロックします
- 12. マップボックススタイルが間違った場所にロードされています
- 13. 誰かが_POSTデータがGodaddy Webホスティングサーバーによってブロックされている問題がありましたか?
- 14. 長時間接続されているためにスレッドがブロックされましたか?
- 15. テーブルビューのデータが間違った順序でロードされています
- 16. データがロードされるまで、Vueブロックの描画を無効にする
- 17. Jquery UIがASP.NETページにロードされていません
- 18. AngularJSのUIビューにngOptionsがロードされていません
- 19. モジュールAdminhtmlブロックがロードされない
- 20. socket.ioページがロードされている間にws://への接続が中断されました
- 21. NSFetchedResultsControllerが間違ったindexPathに項目を追加しました
- 22. 先送りリクエストがブロックされました:時間:30035
- 23. インテントを開いたときに「ナビゲーションがブロックされました」
- 24. ロードDLLブロックUIスレッド
- 25. pacakgeがロードされている間にパッケージのサブモジュールをインポートします
- 26. 間違ったドライバがロードされました
- 27. Angular2データがロードされるのを待っている間にビューを更新します
- 28. ページがロードされている間にdivが移動する
- 29. コンテンツがロードされている間にボーダーサイジンググリッチが発生する
- 30. BackgroundworkerブロックされたUI
バッチサイズを小さくすることができます – Robin
バッチサイズは20ですが、それは高いですか? –