【问题标题】:UIImageView in Storyboard memory issues - Custom Segues pushViewController故事板内存问题中的 UIImageView - 自定义 Segues pushViewController
【发布时间】:2014-07-30 13:43:46
【问题描述】:

我在 Xcode 5.1.1 中使用 ARC 时遇到了一些内存问题。我在 UIImageViews 的 Storyboard 中有几个全屏图像,每次它进入该视图时,图像都会重新加载并且永远不会释放,从而导致明显的内存问题。

在 UIImageViews 中释放这些图像的最佳方式是什么?

这看起来可能是其他问题的重复问题,但我认为我的问题比我在 SO 上看到的其他问题更具体一些。如果你能找到一个完全重复的问题,我希望你能在里面发表评论!

编辑:我使用的是pushViewController 而不是popToRootViewController

【问题讨论】:

  • 你怎么知道图像被重新加载并且从未发布? (我的意思是你如何测量你的应用程序的内存占用)
  • @lucianomarisi 啊,我正在使用 Instruments 来帮助我跟踪图像,并注意到它们不会自动发布。
  • 我在使用 NSZombieEnabled 时评估内存使用情况时遇到了“问题”,你打开了那个标志吗?
  • 你是在 viewWillAppear 方法中写你的 UIImage alloc 吗?检查它并从中删除它并将其写入viewDidLoad。另外,如果您提供的代码有助于我们解决您的问题

标签: iphone xcode memory uiimageview uiimage


【解决方案1】:

经过几个小时的检查和反复检查我的所有代码并在线研究,我终于能够发现我的问题。我不小心让我的自定义 Segue 通过

无限堆叠在我的导航控制器上
pushViewController

而不是

popToRootViewController

这将是自动释放该视图的正确方法。

我考虑过删除这个问题,因为它没有得到最终答案,而且解决方案很简单,但我决定自己回答,也许和我有类似问题的人会发现并提醒检查出他们的自定义 Segues!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-07-26
    • 2019-05-26
    • 2012-01-29
    • 1970-01-01
    • 1970-01-01
    • 2013-09-14
    • 2016-04-02
    • 2012-02-23
    相关资源
    最近更新 更多