1

ViewController の周りに他のビューを配置する必要があるため、静的な TableView を動的な TableView にする必要があります。これは、私の場合はコンテナーを使用して行うことができません。

問題は、テーブル ビューを静的から動的に効率的に変換するにはどうすればよいかということです。

継承を UITableView から UIViewController に変更し、さらにデリゲート メソッドを追加する必要があることを認識しています。

しかし、すべてのテーブル セクションについてはどうでしょうか。静的テーブルに 6 種類のセルを含む 3 つのセクションがあります。これらすべてのセルタイプの UITableViewCell をサブクラス化し、すべてを手動で処理する必要がありますか、それとももっと賢い方法がありますか?

4

1 に答える 1

0

2つの間で変換することはできません。cellForRowAtIndexPath: のようないくつかのテーブル デリゲート メソッドを実装するだけで、静的コンテンツが失われます。そうは言っても、テーブルは常に動的でなければなりません。このようにして、最初に静的に追加したコンテンツを表示するか、新しい動的コンテンツを表示するかを決定するロジックを定義できます。

さらに、デリゲート/データソース メソッドを実装するためにビュー コントローラーは必要ありません。のサブクラスが既にある場合は、それで問題ありませんUITableView。それを独自のデリゲート/データソースとして設定し、それらのメソッドをサブクラス内に実装できます。

そして、最後の質問に答えるために、いいえ、それを行うためのより良い方法は実際にはありません. UITableViewCellセルが共有するすべてのものを実装するサブクラスの基本クラスを 1 つ作成し、この基本クラスのサブクラスで個々の変更を実装することをお勧めします。テーブル ビューで複数のセル サブクラスを使用することは、実際よりもはるかに悪いように聞こえます。

于 2014-01-23T11:53:50.457 に答える