0

ストーリーボードiPhoneアプリにUIViewControllerがあり、いくつかの場所で再利用する必要があります。ストーリーボードには、別のコントローラーへのトリガーされたセグエを持つUIBarButtonItemがあります。ただし、場合によっては、ボタンの動作をオーバーライドして、別のViewControllerにセグエしたいと思います。ターゲットのViewControllerを指定するメッセージでViewControllerを初期化する方法、またはControllerが初期化された後、プッシュされる前にプロパティを設定する方法が必要だと思いますか?

1つの課題は、セグエをプログラムで定義できないことです(これまでに読んだ内容に基づいて)。また、ストーリーボードの同じビューコントローラーに複数のセグエを配置することはできないと思います。だから私はこのようなことをする必要があるかもしれません:

[self presentModalViewController:myNewVC animated:YES];

...セグエを使用するのではなく、ストーリーボードで定義されたボタンの動作をオーバーライドしてそのようにする方法がわかりません。

どんな助けでも大歓迎です。

4

1 に答える 1

3

インスタンス化するビューコントローラを選択 IBActionするために、条件のとを作成するだけです。BOOL

 UIViewController *viewController;
    if (someCondition) {
        viewController = [self.storyboard instantiateViewControllerWithIdentifier:@"someViewID"];
    }else{
        viewController = [self.storyboard instantiateViewControllerWithIdentifier:@"someOtherID"];
    }
    [self presentViewController:viewController animated:YES completion:nil];
于 2012-08-26T15:49:28.983 に答える