2012-03-05 17 views
0

私は自分のアプリケーションの開発を始めて以来、私のビューコントローラのいくつかが成長し、今では多くのコードを持っています。私はinheritインスタンス変数のような何らかのサブクラスを作成できるかどうか、私はいくつかのコードを外に出すことができるのだろうかと思っています。Obj-C、ビューコントローラからサブクラスにいくつかのコードを削除しようとしていますか?

私は値で提供する必要があるプロパティを持つ新しいクラスを作成せずにこれが可能ではないと思います。

時間を節約するためにできることは何ですか?

+2

サブクラスは確かにivarsを継承します。それが継承の仕組みです。あなたは直面している問題についてより具体的にすることができますか? –

+0

まあ私のナビゲーション砂利ボタンのアクションは、入力とフォーマットの値を評価するコードがたくさんあります。したがって、多くのインタフェース変数が使用されます。理想的には、このコードを新しいクラスに移動したいと思います。 – Jules

+1

コメントに一般的な文を書くのではなく、あなたの質問にいくつかのコードを入れてください。 –

答えて

3

これは、Objective-Cコーダーを使用したかなりトリッキーで扱いにくいテーマです。一般に、このタイプの枯渇は予想される。あなたの質問には具体的な内容はありませんが、いくつかの基本的なビューセットアップコードを繰り返すだけであれば、それは本当に問題にはなりません。

一般に、「ベース」UIViewControllerサブクラスの作成は一般的ではありません。非常に一般的なビューコントローラにロジックを追加する場合は、特別なナビゲーションボタンを設定するなどして、categoryを使用できます。

基本的にObjective-Cでは、カテゴリを使用して、特定の動作をすべてのインスタンスに追加することができます。リンク先の例では、文字列クラスにいくつかの関数を追加しています。あなたが繰り返していることを見て、カテゴリがサブクラス化のよりよいアプローチになるかどうかを見てみましょう。

関連する問題