-1

わかった。私は非常に経験豊富な iOS 開発者ですが、常につまずくのは、テーブルビューを適切に作成する方法です。あなたのアプリがテーブルビューだけの何千ものシン アプリの 1 つである場合、 cellForRowAtIndexPath: datasource-method を使用して、いくつかの if() 句を使用できます。

しかし、私が維持しているアプリは非常に大きく、順序とデザインが変化する動的セルが多数あるため、最終的には完全に脂っこい if() 階層になってしまい、誰も (自分自身でさえ) 長期間維持することはできません。走る。

そこで、この面倒なことを解決するためのアイデアに関するスレッドを開始することにしました。したがって、どんなアイデアでも良いインプットです。

1 つのアイデアは、UITableViewCells のコレクションを作成し、cellForRowAtIndexPath: でそのコレクションにクエリを実行することです。

別のアイデアは、必要なツリーのオブジェクト グラフ全体を構築し、それにクエリを実行して、現在のオブジェクトに従って UITableViewCell を構築するためのファクトリ クラスを用意することです。

あなたのアプリでこのビジネスをどのように解決したか、またその解決策が長期的にどのように機能するかを聞かせてください。長所と短所は大歓迎です:-)

4

1 に答える 1

1

Stackoverflow はフォーラム (これが適切なスレッドやディスカッションを見つけることができる場所) ではなく、プログラミング指向の質問の集まりです。

FAQの 2 番目のセクションから、次のステートメントを取り上げます。

質問をする動機が「______についての話し合いに参加したい」である場合は、ここで質問するべきではありません。

問題について多数のアイデアが必要な場合は、Stackoverflow のチャットルームを参照することをお勧めします。また、インターネットの他の場所には、このトピックについて議論するのに最適なフォーラムがいくつかあります。 .

ただし、動的な UITableViewCell をより組織化された方法で管理する単一の方法を探しているだけの場合は、投稿を編集して、ディスカッションではなく回答を求めることができます。どの件に関して、私は動的セルを過剰に使用する必要はありませんでしたが、少量の場合、他の機能を作成しているように感じます (

- (UITableViewCell *)tableView:(UITableView *)tableView cellType1ForRowAtIndexPath:(NSIndexPath *)indexPath)

)私があなたを正しく理解していれば、そのようなセルの作成を処理して正常に動作するようにします。私はcellForRowAtIndexPathこれらの他の関数をいくつか呼び出すだけのシステムを使用しました。これはコードを整理する最良の方法ではないかもしれませんが、単一の関数にすべてを含めようとするよりも確実に大幅に改善されています。:)

于 2012-11-17T15:43:24.563 に答える