4

その main を拡張するViewController2 つの異なるものが あります。1 つは iPhone 用、もう 1 つは iPad 用です。ViewControllersViewController

iPadViewControllerは別の拡張UIViewをインスタンス化し、それを独自のビューとして設定します。そのビューにはいくつかのボタンがあり、そのセレクター メソッドを main のいくつかのメソッドとして追加したいと考えていますViewController。これはどのように達成できますか?

したがって、これを視覚化する方法は次のとおりです。

Main ViewController
| iPhone ViewController
| iPad ViewController
  | Some UIView Class    --> Button must invoke method in Main View Controller

編集: 私はインターフェイス ビルダーをまったく使用しません。

4

2 に答える 2

22

あなたの質問は少しわかりにくいですが、理解できれば、次のようなコードを使用してボタンを設定できます。

[button addTarget:yourObject action:@selector(yourMethod:) forControlEvents:UIControlEventTouchUpInside];

したがって、 addTargetを のインスタンスにMainViewController設定し、アクションを 内で呼び出したいメソッドに設定しますMainViewController。メソッドが受け入れる限り、Interface Builder でもこれを実行できるはずですIBAction

于 2012-05-25T17:44:35.030 に答える
2

私が質問を誤解していない限り、それにはトリックはありません。

メインのビュー コントローラーで定義する(IBAction)buttonPressed:(id)senderと、iPad ビュー コントローラーのサブクラスに継承されます。selfしたがって、iPad ビュー コントローラーがそのボタンをセットアップするときに属するセレクターとして指定すると、正常に動作するはずです。

于 2012-05-25T17:42:34.577 に答える