【发布时间】:2013-12-25 16:02:31
【问题描述】:
当取消交互转换时,呈现的视图控制器永远不会释放(永远不会调用 dealloc)。当一个交互转换成功完成时,一切都很好,但是当这个转换被取消时,目标视图控制器似乎永远不会被释放。结果是内存丢失,但不是内存泄漏(至少 Instruments 没有检测到)。我可能做错了什么,但我不明白那是什么。由于我无法找到任何证据表明其他人有此问题,我认为是我。
我有一个非常小的示例项目来演示该问题 (https://github.com/mparma-isi/InteractiveTransitionIssue.git)。红色方块中的点击执行到第二个视图控制器的转换。在第二个控制器中轻按一下即可将该控制器解散回第一个控制器。第一个视图控制器的红色方块内的捏合手势使用 UIPercentDrivenInteractiveTransition 启动交互式过渡。如果您取消转换(捏合的负速度),则呈现的视图控制器不会被释放。如果您完成了过渡,一切都会按预期进行。
提前感谢您的帮助。
迈克
【问题讨论】:
-
我想我回复有点晚了,但我也面临这个问题。事实上,它存在于我能找到的所有示例中,所以我想可以安全地假设这是一个 UIKit 错误。你有没有想出一个解决方法,也许?
-
仍然正确,有什么变化吗?
标签: ios uiviewcontroller