iOS   发布时间:2022-03-30  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了ios – 未调用viewDidDisappear大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我在一个应用程序上工作,我的视图有问题[Will / Did]消失方法在返回应用程序时没有被触发.

@H_403_8@

案例是,我有UINavigationController,它上面有两个视图控制器.当用户按下主页按钮时,用户退出.当他稍后返回应用程序时,以下(简化)代码在我的AppDelegate中运行:@H_403_8@

@H_403_8@

- (void)applicationDidBecomeActive:(UIApplication *)application
{
    [(UINavigationController *)self.window.rootViewController popToRootViewControllerAnimated:NO];
    [self.window.rootViewController presentModalViewController:loginViewController animated:NO];
}

当我弹出导航控制器堆栈上的视图控制器时,我希望视图[将| do]消失方法调用.然而,事实并非如此,因为当iOS要解雇这些方法时,它们(显然)不再出现​​在屏幕上.似乎模态视图控制器已经接管了.@H_403_8@

如果我没有呈现模态视图控制器,则视图[将| do]消失方法按预期调用.@H_403_8@

我的问题是:如果我想要调用视图[将| did]消失的方法,那么我该如何构建我的代码呢?有没有更好的地方来呈现我的模态loginViewController?@H_403_8@

编辑:@H_403_8@

为了更清楚地显示我的问题,我在这里创建了一个非常简单的测试项目:https://github.com/JohanVase/ModalViewCauseMissingViewDisappearCalls.请尝试几次按照应用程序中的说明操作,看看我没有在我的viewWillDisappear中发布我的“资源”方法.@H_403_8@

解决方法

我终于向Apple技术支持部门提出了同样的问题.他们得出结论,这是iOS中的一个错误,因此我向Apple提交了一份错误报告.同样的错误似乎出现在iOS 6和最新的iOS 7(Beta 5)中.

@H_403_8@

Apple技术支持建议如下:@H_403_8@

@H_403_8@

但是,我认为这在视图控制器中暴露了太多我的细节,所以我选择使用willMoveToParentViewController实现它:相反.从视图中删除视图控制器时调用方法,并正确调用它.@H_403_8@

大佬总结

以上是大佬教程为你收集整理的ios – 未调用viewDidDisappear全部内容,希望文章能够帮你解决ios – 未调用viewDidDisappear所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签:ios调用