答えて
メインスレッドでできるだけ少なくします。 NSOperations/GCDやその他のバックグラウンドテクニックを使用して、メインスレッドからすべてをロードします。他のすべての人は言った:
大量の画像/動画/音声ファイルを使用したり、使用されていないオブジェクトを初期化したり、できるだけ解放したりしないでください。
UITableViewを使用している場合は、事前にすべてのデータを準備し、tableView内の関連するモデルクラスインスタンスから取得することを確認してください。cellForRowAtIndexPath:委任メソッド - そうしないと応答性が失われます。
また、適切なことを行い、提供されたUITableViewでdequeueReusableCellWithIdentifierメソッドを使用していることを確認してください。
あなたの質問は一般的ですが、答えは "メモリ管理"です。
ここまでの回答はすべてこのカテゴリに該当します。メディア(ビデオ、オーディオ、写真)を再生しているか(UITableViewを使用して)データを表示しているかにかかわらず、低メモリを最適化する必要があります。
トリックは、いつでも必要なものだけをロードすることです。
また、GCD。
メインUIスレッドで実行されるすべてのメソッドと関数をプロファイルし、すべて(サブルーチンとデリゲートを含む)が実行ループに完全に終了するまでに16ミリ秒未満を取るようにします。これらのUIメソッドとともに、すべてのUI図面更新が16 mS以下であることを確認してください。その後、UIは60fps(現在のデバイスで可能な限り最大)で実行でき、入力イベントを見逃すことはありません。
他のすべての画像ロード、すべてのネットワークデータ転送、すべての処理などは、非同期で実行されるか、バックグラウンドスレッドで実行されます。
(そして、何他の皆はできるだけだけでなく... :)
使用コアデータを述べました。コアデータを使用するのが別の方法を使用する場合よりも悪いケースは見たことがありません。
- 1. あなたがiPad 1であなたのアプリを使用するのを止めることができますか?
- 2. iPad用アプリを開発用にiPadに置くことができないのはなぜですか?
- 3. UIModalPresentationFormSheetはiPadアプリ4.2のためのオプションではありませんか?
- 4. 雷がルートノードまたはメタデータを表示するために取得できません
- 5. 不満なトリックを使わずに自分の単語カウントプログラムを速くする方法はありますか?
- 6. サークルに関数を適用するためのトリックがありますか?
- 7. ipad/iphoneアプリにはどのサウンドフォーマットがおすすめですか?
- 8. iPadアプリのためのiPadアプリスケールを作成するにはどうすればよいですか?
- 9. 完全なDoxygenカバレッジに必要な冗長コメントの量を減らすためのトリックはありますか?
- 10. htmlテーブルの背景を印刷するためのトリックはありますか?
- 11. ストリームマニピュレータをバリデーションテンプレート関数に渡すためのトリックはありますか?
- 12. iosアプリは、12.9 iPad Proデバイスではなく、わずか9.7インチiPadをサポートできますか?
- 13. あなたの反応ネイティブ開発を加速するためにどのツールを使用しますか
- 14. BOOST_FOREACH:オールキャップのスペルを避けるためのトリックはありますか?
- 15. どの範囲ベクトルを非正規化/正規化するために[-1; 1]が速くなるため
- 16. iPadアプリ(plistまたはUIViewController?)で向きを固定する
- 17. iPadアプリからMySQLに直接接続してください(PHPなどではありません)
- 18. CygwinであなたのGREPはどれくらい速いですか?
- 19. 私のコードをより速く動かすためのいくつかの最適化のトリックはありますか?
- 20. iPhone専用アプリのためにiPadにアドホックビルドをインストールすることはできますか?
- 21. iPadアプリを他の誰かのiPadでテストできますか?
- 22. なぜスレッドセーフなロギングライブラリがたくさんあるのですか?
- 23. jQuery - ループアニメーションの一時停止と再開があまりにも速いため、キューが動かなくなる
- 24. アプリがオンでないときにあなたの位置を知ることができますか? IOS
- 25. トリックは、あなたが頻繁にこのような何かを参照してください
- 26. VBScript CDOをAmazon SES SMTPと連携させるためのいくつかのトリックはありますか?
- 27. 私のiPhoneアプリがiPadと互換性があるのはなぜですか?
- 28. AutoLayoutではなく、iPadでFrameを使用できますか?
- 29. rssiの変更を取得するためのWiFiのスキャン速度が速くなりました
- 30. iPhone/iPad UIWebViewはレンダリングするためにアクティブなビューにする必要がありますか?
+1私のUITableViewの答えではありますが、ユーザーインターフェイスの応答性も大きな問題です。 –
高レベルの質問ですが、可能な限り速くなるように物事を学ぶ必要があります。すべての答えは私に役立ちます:-) –
実際には、その反対はしばしば真です。大量のメモリを使用して、多数のオーディオ波形、ビットマップ、プレビュー画像などを事前にステージングまたはキャッシュして、インスタント(ロードまたは描画時間なし)の近くでUIでプレゼンテーションを行うことができます。プレロードやプリレンダリングが多いほど(バックグラウンドで遅れているかもしれません)、ユーザーが見る時間が少なくなります。速度のために、OSがこのキャッシュのためにあなたにできるように多くのメモリを使用してください。 – hotpaw2