私はデータベースからデータを収集するUITableViewを持っています。私が知りたいのは、UITableViewコレクションを反復してセルの値をチェックできる方法があるかどうかです。私が尋ねる理由は、現在の値(フォント、サイズ、色などの変更)に基づいて各セルを更新したいからです。私はこのトピックに関してはanotherの投稿を見ましたが、セルは既に作成されており、その値は変更されているので、私にとっては少し難しくなっています。私はreloadData
を呼び出す前にUITableViewを反復することを考えていましたが、他の提案は歓迎されています。iOS反復UITableView
答えて
UITableView
のセルを反復処理しないでください。それらのうちのいくつか(実際にはほとんどの場合)は、リクエストするまで存在しない可能性があります。 UITableView
は積極的にセルをリサイクルするので、セルが表示されていない場合は、後でリサイクルキューのモーメントに戻すために、最初からセルを作成する可能性が非常に高いです。
あなたのモデルを変更し、reloadData
にあなたの投稿が示唆している方法を呼び出すことが適切な解決策になるでしょう。 iOSはできるだけ小さなCPUサイクルでアップデートを実行するので、すでに作成されているセルについて心配する必要はありません。これは、コーディングの面でも最も簡単なアプローチです。
テーブルビューは、データを表示するためのものです。あなたの表のセルのプロパティは、読み込みではなく書き込む必要があります。この状況を適切に処理するには、データが変更されたときに、基になるモデルオブジェクト(テーブルビューにデータを挿入するために使用するオブジェクト)を更新し、影響を受ける行を再度読み込む必要があります。
あなたが遭遇する問題は、UITableView
が表のセルを再利用することです。テーブルセルが画面からスクロールすると、テーブルビューは同じセルを再利用して別の行を表示する可能性が非常に高いです。
これは基本的にはテーブルセルを反復処理できないことを意味します。データが変更されたために行を更新する必要がある場合は、reloadRowsAtIndexPaths:withRowAnimation:
(またはすべての行が変更されている場合はreloadData
)を呼び出し、その行が画面に表示されている場合はUITableView
がデータソースメソッドを呼び出し、表示するセル。
- 1. UITableViewでセルを反復するコスト
- 2. JSF/Richfaces反復の反復スコープ変数?
- 3. BSTの反復型対反復型ソリューション
- 4. 反復
- 5. 反復++
- 6. 反復
- 7. 反復
- 8. 反復
- 9. 反復
- 10. UITableView iOS
- 11. Struts2の反復
- 12. Linq - ルックアヘッド反復
- 13. OpenCV反復ランダムフォレストトレーニング
- 14. 各反復
- 15. デバッグ反復リミットエラー
- 16. 反復処理
- 17. を反復ツリー
- 18. 反復が
- 19. 反復iPhone
- 20. 反復アルゴリズム
- 21. ロジック反復ソートオプション
- 22. ギャラリーの反復
- 23. 反復とStringify_keys
- 24. レコードセットの反復
- 25. は.each()反復
- 26. 反復2
- 27. Doctrine2反復
- 28. 反復PHPオブジェクト
- 29. 反復は
- 30. StringTemplate ListDictionary反復
どのようにすれば、セル内のデータをチェックして、適切なフォーマットの変更を行うことができますか?私はデータベースからデータを取り出すためにUITableを割り当てているので、受け取った後でセルに表示するまで受け取っている値を完全に制御することはできません。私がやろうとしているのは、データベースから引き出し、アイテムフォーマットのタイプに応じてセルを小規模な在庫システムにすることです。最初の列のフォントを太字にし、各アイテムのドロップタイプを丁寧な色にし、そのタイプに関連するアイテム名の背景色を設定したいと思います。 – Seb
これを行う正しい場所は、あなたの 'tableView:cellForRowAtIndexPath:'実装にあります。これは、 'UITableView'がセルにデータを設定し、その外観を設定することを期待する場所です。 – Alex
@Sebこれをすべてあなたの 'tableView:cellForRowAtIndexPath:'メソッドに実装することができます。メソッドから戻るための 'UITableViewCell'を作成するか、または再利用のためにリサイクルされたものを設定するときは、データベースから取得した値にコンテンツを設定します。これは値を調べる適切な場所であり、 'UITableViewCell'のスタイル設定要素を必要に応じて設定してから、それを' UITableView'に返して表示します。 – dasblinkenlight