gpt4 book ai didi

uiviewcontroller - 在父 View Controller 被 viewDidUnload 后尝试 dismissModalViewController 时得到 "EXC_BAD_ACCESS"

转载 作者:行者123 更新时间:2023-12-03 16:56:18 25 4
gpt4 key购买 nike

我有一个名为“MainView”的 View Controller ,它会调用

[self presentModalViewController:playView animated:NO];

插入“PlayView” View Controller 。

当app在PlayView运行时,如果收到applicationDidReceiveMemoryWarning消息,会调用MainView的viewDidUnload函数,释放MainView对象。这一刻,PlayView 还活着。在用户单击按钮离开 PlayView 之前,一切都很好,它(PlayView)将调用:
[self dismissModalViewControllerAnimated:NO];

然后应用程序因收到“EXC_BAD_ACCESS”错误消息而崩溃......
我认为原因是 MainView 对象消失了,当 PlayView 想要关闭自己时,它找不到合适的 ViewController 来呈现。

如何解决这个问题? T_T

PS。 PlayView View Controller 由 IB 创建,并在 MainView 中设置为保留属性。

最佳答案

我想问题出在你的 MainView 上。它有一些指向 View (位于主视图上)的导出或属性。在内存警告 MainView.view 被卸载(因此它释放它的 subview )并且如果您没有保留它们并且没有将它们设置为 nil 之后,它们现在指向现有对象。因此,您应该在 viewDidUnload 方法中将它们全部设置为 nil。

关于uiviewcontroller - 在父 View Controller 被 viewDidUnload 后尝试 dismissModalViewController 时得到 "EXC_BAD_ACCESS",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6330503/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com