0
UIBarButtonItem* saveButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemDone
                                                                              target:hvc //other controller
                                                                              action:@selector(save:)];
        UIBarButtonItem* cancelButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemCancel
                                                                                target:self
                                                                                action:@selector(cancel:)];

        self.navigationItem.rightBarButtonItem = saveButton;
        self.navigationItem.leftBarButtonItem = cancelButton;

ビューコントローラーに2つのボタンが作成されています。いくつかのテキストフィールドのデータを取り込んで別のView Controllerに送信する保存ボタンを設計しようとしていますが、キャンセルボタンは現在のView Controllerを閉じるだけです。

その他のビュー コントローラーは、アプリ デリゲート ファイルで初期化されました。

target保存ボタンをこの他のView Controllerに定義するにはどうすればよいですか?

4

1 に答える 1

0

変数にそのビュー コントローラーへの参照がある場合はhvc、上記のコードを使用します。そのインスタンスを取得しない場合。

ただし、よりクリーンな方法は、表示されたView Controllerのみでボタンアクションを処理し、ターゲットハンドラーから他のView Controllerのメソッドを呼び出すことです。

というメソッドを作成して-(void)handleSave:(id)data;実装します。そして、そのView Controllerクラスのインスタンスを使用してメソッドを呼び出します。

于 2013-06-20T06:39:12.457 に答える