0

私のアプリには2つのシーンのストーリーボードがあります-自動セグエ(IBで作成)を使用しています。1番目にボタンがクリックされるとUIViewController、2番目UIViewControllerがモーダルに表示されます。

1UIViewController人目は2人目がいつUIViewController自分自身を解雇するかを知る必要があります。これを達成するための正しい方法は何ですか?現在、私は-viewDidAppear:1番目のVCで使用していますが、それは正しくないようです。

任意のポインタをいただければ幸いです。

最高、CS

4

3 に答える 3

1

通知を使用して、vc2の却下時にのみタスクを実行するようにすることができます。

// in vc1
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(doSomethingWhenVC2Dismissed) name:@"vc_2_dismissed" object:nil];

// in vc2
[[NSNotificationCenter defaultCenter] postNotificationName:@"vc_2_dismissed" object:nil];
于 2012-10-19T12:52:46.777 に答える
1

あなたがしていること、そしてそれisMovingToParentViewControllerがNOであることをチェックすることは、この特定のケースでうまくいくはずです。最初のビューコントローラーからトリガーされる他のビューコントローラーがあり、それらを区別したい場合は役に立ちません。

最も直接的な方法は、モーダルコントローラーが消えたときに通知を送信することです。

于 2012-10-19T12:22:25.557 に答える
1

モーダルで表示することを目的としたSDKが提供するViewController(MFMailComposer、UIImagePickerなど)を使用してAppleが行う方法に従うだけです。

委任を使用します。

于 2012-10-19T18:24:22.693 に答える