1

MVCを使用します。ボタンがあります。ボタンの描画が表示されます。ボタンのアクションはコントローラーにあるはずですよね?ボタンにアクションを追加するにはどうすればよいですか?ビューからは、コントローラー(MVCの場合)、およびアクションの設定方法を参照しないでください。ボタンを公開して、コントローラーがアクセスできるようにする必要がありますか?

または、ボタンをコントローラーに描画する必要があります。(良くない)

または、デリゲートを使用します(ただし、MVCのすべてのView-Controllerペアにはデリゲートが必要です)

4

5 に答える 5

0

ボタンは、アクションを設定できるように、コントローラーからアクセスできる必要があります。

たとえば、UITableCellsで機能するように少し行うことができます:)->ビューにプロパティボタンを設定できます

しかし、これは議論の余地があり、個人の好みにも依存します

于 2013-01-28T12:51:20.173 に答える
0

コントローラのヘッダーにIBActionを作成します。

-(IBAction)buttonPressed:(id)sender;

次に、Interface Builderで、ボタンをこのアクションに接続します(Ctrlキーを押しながらボタンからファイル所有者にドラッグします)。

次に、コントローラーの実装で、ボタンが押されたときに実行されるコードを記述できます。-(void)buttonPressed:(id)sender

于 2013-01-28T12:53:11.077 に答える
0

たぶん、ボタンをビューのプロパティにすることができます。または、次のようなビューのパブリックメソッドを作成できます-(void)setupButtonSelector:(SEL)selector。セレクターはボタンセレクターです。

于 2013-01-28T12:53:54.557 に答える
0

ビューで使用しているボタンにターゲットセレクターを設定します。そして、セレクターメソッド名でメソッドを定義します。

元:

[button addTarget:self action:@selector(YourMethodName) forControlEvents:UIControlEventTouchUpInside]; // Declare this where you are adding button in view.

-(void)YourMethodName // Use this where you need to perform that button action.
{
   // Do what you need.
}

また、実行時にそのボタンを含むビューを追加する場合は、別のトリックを試してください。ボタンを追加するときにそのボタンのタグ値を設定します。コントローラで、タグ値を介してそのボタンにアクセスし、ボタンにターゲットを追加します。

元;

UIButton *btn = (UIButton*)[self.view viewWithTag:10];
    [btn addTarget:self action:@selector(methodName) forControlEvents:UIControlEventTouchUpInside];
于 2013-01-28T13:25:02.083 に答える
0

とった。addTarget:nilを設定する必要があります。アクションはチェーン内の次のレスポンダーに渡されます。この場合、ViewControllerです。

于 2013-01-28T13:39:19.377 に答える