私はUITableViewを持っていますが、各セルは内容が一意ですが、目的のためには同じですが、セルの作り方は不明です。次の画像を参照してください。
ブラックボックスのアウトラインは、行で区切られた表を表します。各行は可変の高さを有し、異なるデータの視覚的表現を含む。
私は約50行を持っています。各行には、2UIViewsとUILabelに存在する緑色/青色のラインのうちの約10個が含まれています。私は編集や削除の必要はありません。データは約±30kBのJSONです。これを強く型付けされたオブジェクトに変換します。UITableView内のすべてのセルが一意であるときに行うべきことは?
は、これまでのところ私は、次のアプローチを特定していない:
- ませデキューを、一度はデータをcorrespondendingだで構成各セルを保存します。
デキューなし、セルを保存せず、データから完全に視覚的表現を初期化して再構成する。
デキューは常に優れています。
- 一意の識別子を介して細胞をデキューし、そうでない場合は
- それを構築するには、一意の識別子を使用してこれを行うことができますか私はそれを自分自身を実装する必要がありますか?
- セルをデキューし、データから完全に視覚的表現を再構成する。
スクロールするときにすぐに表の表示に表示されないようにしても問題ありません。ワーカースレッドでセルを構築し、各セルの構築時にセルの内容を追加しても問題ありません。
どのようなアプローチが最も適していて、受け入れられると思われますか?あるいは、別のアプローチがなぜ優れているのでしょうか?
セルは、再利用されたtableviewで再構築されず、再利用可能なセルにそれらのデータを送信します。ただし、これらのデータはWebサービスから取得していますか?ワーカースレッドは、データのネットワークコールがデバイスに保存されるのを待たなければなりませんか? – doNotCheckMyBlog
私の最大の問題の一つは、実際のデータでした。私の意見では、これは醜いJSONです:それぞれの緑色の線は、実際の行とは別の配列の別々の要素です。彼らはまた、完全に順序付けられていないので、すべてのデータが利用可能になるまで行の高さは不明です。私はWebサービスからデータをダウンロードしています。 – Xeago