当我单击基于导航的应用程序上的后退按钮时,为什么未调用 viewdidunload 函数

发布于 2024-10-20 14:06:52 字数 138 浏览 2 评论 0原文

您好,我想发布我的 fetchedResultsController

我想知道为什么当我在基于导航的应用程序上按后退按钮时不调用 viewdidunload 。或者我应该在其他地方释放它?

谢谢你的帮助

Hi I want to release my fetchedResultsController.

I was wondering why is viewdidunload not called when i push back button on navigation based application.or i should release it somewhere else?

thanks for help

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

你穿错了嫁妆 2024-10-27 14:06:52

-viewDidUnload 仅保证在视图从内存中清除时被调用,并且 UIKit 框架可能会挂起它,以便在用户返回那里时快速呈现视图。要在视图消失时确定性地释放获取的结果控制器,请使用 -viewWillDisappear:-viewDidDisappear:

-viewDidUnload is only guaranteed to be called when the view is purged from memory, and the UIKit framework might be hanging on to it in order to present the view quickly if the user goes back there. To deterministically release your fetched result controller when the view disappears, use -viewWillDisappear: or -viewDidDisappear:.

芸娘子的小脾气 2024-10-27 14:06:52

如果您认为由于未调用 viewDidLoad 而导致泄漏,请检查您的controller.view removeFromSuperView 调用并确保您正在使用removeFromParentViewController。不要只是从超级视图中删除视图,而是从其父控制器中删除视图控制器。

If you think that you're having leaks because viewDidLoad isn't called, than check your controller.view removeFromSuperView calls and ensure that you're using removeFromParentViewController. Instead of just removing the view from superview remove your viewController from its parentController.

紫轩蝶泪 2024-10-27 14:06:52

我发现在我的例子中发生了一些奇怪的事情:dealloc被调用,但viewDidUnload没有被调用。

但我认为出于内存管理目的我可以忍受这一点,因为那时我所有的强属性都将被释放(我正在使用 ARC)。

在您的情况下,我认为您还应该检查是否调用了 dealloc 并在那里释放您的 fetchedResultsController

I'm seeing something strange happening in my case: dealloc is called but viewDidUnload don't.

But I think I can live with that for memory management purposes because all my strong properties will be deallocated at that time (I'm using ARC).

In your case I think you should check also for dealloc being called and release your fetchedResultsController there.

后eg是否自 2024-10-27 14:06:52

您可以从 -dealloc 中自行调用它。

you can call it yourself from -dealloc.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文