如何解决弹出窗口关闭后,如何在PageViewController上显示警报?
我有这样的VC结构
UIPageViewController-> detailViewController-> popoverviewcontroller
popoverviewcontroller通过放宽的设置被解雇,使我们回到detailviewcontroller
现在,在关闭弹出窗口之后,我想刷新pagecontroller上的页面,因为用户执行的操作已更改了数据。
我还想显示一条警报,通知用户他们是否成功。
所以我尝试将这段代码放在pageViewcontroller
- (IBAction) unwindFromPopup:(UIStoryboardSegue*)unwindSegue{
[self refreshPages];
UIAlertController * alertController = [UIAlertController alertControllerWithTitle:@"alert" message:@"this should appear" preferredStyle:UIAlertControllerStyleAlert];
[self presentViewController:alertController animated:YES completion:nil];
}
我尝试将上面的代码移到详细信息视图控制器,但是我没有得到任何结果。没有错误或任何东西,只是完全没有警报。我在segue中设置了一个断点,然后调用了代码。但是没有警报。
我考虑将代码放入各自的viewDidAppear方法之一中,但是由于某种原因,我关闭弹出窗口后,pageviewcontroller或detailview控制器都没有调用viewDidAppear。
因此,在这一点上,我不知道如何显示此警报。
我需要发布完整的代码,还是我的问题在包含的详细信息中显而易见?
解决方法
谢谢-根据您的评论...很久以前,在遥远的iOS版本中,我执行了所有可能的任务,并记录了何时调用该调用,并列出了我基于其回答的内容。我必须承认,如今,使用演示控制器代表可以完成大部分工作。
无论如何,当您弹出或模态显示控制器时,为回答您的问题,正在显示的控制器 将在完成后向beingPresented
和beingDismissed
发出消息并且您也许可以将其用于尝试做的事情。
当您推一个控制器时,它会在显示时提示isMovingToParentViewController
,并在关闭时显示isMovingFromParentViewController
,再次显示该控制器。
返回到弹出窗口...它将在显示的VC中发送消息prepareForSegue
,在显示的VC中发送消息viewWillAppear
和viewDidAppear
,并且在关闭时将仅发送消息 viewWillDisappear
和viewDidDisappear
在出现的VC中,因此出现了问题。至少它还会像上面提到的那样向beingDismissed
发送消息,如果可以使用的话,我真的很高兴。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。