我的应用程序中有两个场景StoryBoard - 它使用自动segue(在IB中创建)。在第一个UIViewController
点击按钮时,第二个UIViewController
会以模态方式显示。
第一个UIViewController
需要知道第二个UIViewController
何时解散自己。实现这一目标的正确方法是什么?现在,我在第一个vc中使用-viewDidAppear:
,但这似乎不对。
任何指针都会非常感激。
最佳, CS
答案 0 :(得分:1)
您正在做的事情,以及检查isMovingToParentViewController
是否正确,应该适用于此特定情况。如果您有其他视图控制器从第一个视图控制器触发并且您想区分它们,它将无济于事。
最直接的方法是让模态控制器在消失时发布通知。
答案 1 :(得分: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];
答案 2 :(得分:1)
只需按照苹果公司提供的方式使用SDK提供的ViewControllers打算以模态方式呈现:MFMailComposer,UIImagePicker等。
使用委托。