4

iOS6アンワインドセグエを使用してアプリを作成しましたが、iOS5にないことに気づかなかったため、iOS5をサポートするために分解しています。これまでのところ、モーダルセグエビューからルートビューに情報を戻すためにデリゲートを使用する必要があることを理解し、従うべきいくつかの良い例があり、静かにそれを取得できると確信しています。

現在、モーダルセグエは、コードではなくストーリーボードを介して生成されます。

ルートビューとしてデリゲートを設定するには、代わりにコードを介して生成する必要がありますか、それともストーリーボードを介して方法がありますか?

4

1 に答える 1

11

セグエを実行する前に、プログラムは- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sendersourceViewController(セグエを呼び出すビューコントローラー)のメソッドを呼び出します。このメソッドでは、destinationViewControllerにselfへの参照を与えることができます。

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
    [segue.destinationViewController setDelegate:self];
}

もちろん、destinationViewControllerのプロパティが必要です。

@property (weak, nonatomic) id<yourProtocol> delegate;

それが役に立てば幸い。

于 2012-11-09T03:12:52.677 に答える