BaseViewController
から継承するというクラスと、から継承するというUIViewController
クラスBaseTableViewController
がありUITableViewController
ます。これらのクラスは両方とも同一の共有ロジック (ローテーション処理、ヘルパー メソッドなど) を持っています。現在、コードは両方で単純に複製されています。ViewControllerHelper クラスを作成してパブリック プロパティとして公開することだけを検討しましたが、もっと洗練されたソリューションがあるかどうか疑問に思っていました。
質問する
151 次
2 に答える
0
BaseViewController
2 つのイニシャライザのような共通クラスを作成します。
initWithList:
(テーブルビュー用)およびinitWithSomething:
単純な UIViewController 用。これらのイニシャライザはそれぞれ個別の xib をロードします (1 つはUITableView
メイン ビューとして、もう 1 つは単純なビューとしてUIView
)。
すべてのインスタンスで同じメソッドを使用できます。UITableViewDelegate
そして、UITableViewDataSource
プロトコルを実装するだけで済みます。
于 2012-05-01T17:56:43.657 に答える
0
共有 ivar/プロパティが必要ない場合は、UIViewController の拡張機能を作成できます
于 2012-05-01T17:58:44.110 に答える