gpt4 book ai didi

ios - UISplitViewController : Abandoned memory until another VC is pushed into the navigation stack?

转载 作者:行者123 更新时间:2023-12-01 15:51:06 28 4
gpt4 key购买 nike

我一直在对我正在开发的应用程序进行内存分析,并注意到我的应用程序中的详细 View Controller 已“废弃”(仍驻留在内存中,但有效引用仍然存在),直到将新的 View Controller 推送到导航堆栈。我已经在设备上和模拟器中测试了这个,遇到了同样的问题。

我创建了一个示例项目 here和演示该现象的视频here .在详细 View Controller 的 dealloc 中,我放置了一条关于何时销毁 View Controller 的日志消息。直到将新的 View Controller 放置到导航堆栈上后,它才会执行。

执行内存配置文件,直到调用 UISplitViewController 中的私有(private)方法,才会释放 View Controller ,_willShowCollapsedDetailViewController:inTargetController::

enter image description here

有什么我想念的吗?这是一个错误吗?如果不是,我如何确保细节 View Controller 在从导航堆栈中弹出时被正确释放?

iOS 8 9 中存在此问题。

最佳答案

折叠时,_willShowCollapsedDetailViewController 通过 _setPreservedDetailController 保留细节 Controller ,因此在 separateSecondaryViewControllerFromPrimaryViewController 期间将 Controller 旋转到横向时,它可以移动到次要位置。否则 Split View的右侧将是空洞的灰色和悲伤的样子。所以你遇到的是当它保留新的时,旧的被释放和释放。

关于ios - UISplitViewController : Abandoned memory until another VC is pushed into the navigation stack?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32959962/

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