1

BaseViewControllerから継承するというクラスと、から継承するというUIViewControllerクラスBaseTableViewControllerがありUITableViewControllerます。これらのクラスは両方とも同一の共有ロジック (ローテーション処理、ヘルパー メソッドなど) を持っています。現在、コードは両方で単純に複製されています。ViewControllerHelper クラスを作成してパブリック プロパティとして公開することだけを検討しましたが、もっと洗練されたソリューションがあるかどうか疑問に思っていました。

4

2 に答える 2

0

BaseViewController2 つのイニシャライザのような共通クラスを作成します。

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 に答える