setAction
ビューにローカル関数へのボタンがあります。GameOptions.m
私には次の機能があります:
- (void) changeSettings (UIBarButtonItem *) sender {
// do something
}
GameOptions
そしてそれを.mで開始するボタン:
[btn1 addTarget:self action:@selector(changeSettings:) forControlEvents:UIControlEventTouchUpInside];
今、私はそれを彼のビューからナビゲーションコントローラーに移動しましたrightBrButtonItem
。これは、すべての設定を備えたmyVC
smallのインスタンスであり、使用するたびに使用されます。UIViewController
navigationBar
pop ,push
UIBarButtonItem *buttonNav1 = [[UIBarButtonItem alloc] initWithCustomView:settingsView];
[myVC.navigationItem setRightBarButtonItem:buttonNav1];
問題は、このボタンが彼のクラスになく、 .mGameOptions
での実装で同じ関数を開始することです。GameOptions
次のことをしたいです:
buttonNav1 setAction:changeSettings;
しかし、それは不可能です。changeSettingは認識されません。
試しました:buttonNav1.action = self.
しかし、私はこの関数を取得していません。パラメータのない関数のみです。のボタンからchnageSettingsを呼び出すにはどうすればよいですか?navigationBar