1

まず最初に、私はObjective-cとxcode全般にまったく慣れていないので、基本的な知識の欠如を支持します。

UITableViewControllerしかし、基本的にはまたはに拡張する必要がUIViewController ありますが、別の方法では、実装を継承するUIViewControllerが、UITableViewController

これを達成するために、私はC#で次のようなことをしたでしょう:

@interface Keyboard_Field_Extensions_UIViewController : UIViewController 
@end

@interface Keyboard_Field_Extensions_UITableViewController : Keyboard_Field_Extensions_UIViewController, UITableViewController
@end

でこれを行う方法はありますobjective-cか?多分デリゲートを使用していますか?しかし、どのように?

4

2 に答える 2

1

Objective Cには、C ++やC#のように複数の継承がありません

継承チェーンです -UITableViewController: UIViewController : UIResponder : NSObject

于 2013-01-10T08:38:12.927 に答える
1

そうですね、objective-c には多重継承はありません。デリゲートまたはプロトコルはそれぞれ、サブクラスを実装せずにオプションまたは既存のクラスを拡張することができます。(私があまり間違っていなければ、Objective-Cに非常に固有です)

ただし、一般的には、UITableView を拡張またはサブクラス化することはできますが、お勧めできません。UI で実現したいことをもう少し詳しく説明する必要があります。そうすれば、この一般的な「プロトコル/デリゲートを使用できます」よりもはるかに優れた提案が得られる場合があります。

于 2013-01-10T08:36:29.877 に答える