微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

调用popToRootViewControllerAnimated时,ios – viewWillDisappear不会被调用

我在遗留应用程序上工作,并且发现我的观点[Will / Did]消失方法并不总是被正确触发.

情况是,我有一个(自定义)UIViewController在AppDelegate中设置为rootViewController.这个rootViewController有一个UINavigationController,它有两个视图控制器.当用户按下主页按钮时,用户退出.当他以后返回到应用程序时,应用程序调用[UINavigationController popToRootViewControllerAnimated:YES],然后显示一个模态UIViewController进行登录.

问题是:当我正常推动/弹出UINavigationController时,我的viewWilldisappear方法被正确调用.但是当我使用popToRootViewControllerAnimated:方法时,在任何被弹出的视图控件中都没有调用viewWilldisappear.

在互联网上搜索只给出了两个可能的原因:

> If using a UINavigationController as a subview,you must call view[Will/Did]Disappear yourself
> Not calling the proper super methods

在我的应用程序中没有这些建议是这样的.我不知道在哪里看.任何人有建议在应用程序中做错了什么?

解决方法

视图可能不在屏幕上.它必须在viewWilldisappear:方法的屏幕(可见)上被调用.如果从背景回来,它是不可见的.

您可以尝试使用willMovetoParentViewController:当视图控制器从其父级删除调用.

原文地址:https://www.jb51.cc/iOS/328976.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐