【问题标题】:Array object gets released in iPad app due to memory warnings in iPad app由于 iPad 应用程序中的内存警告,数组对象在 iPad 应用程序中被释放
【发布时间】:2012-04-18 12:20:23
【问题描述】:

我正在开发一个 iPad 应用程序。在我的 iPad 上,如果我只运行该应用程序,则什么也不会发生,如果我启动其他一些应用程序近 4 到 5 次,那么我的应用程序显示应用程序收到内存警告级别 1 和应用程序收到内存警告级别 2,并且在我的应用程序中用户也有能力绘制他们的作品。每当内存警告发生时,我已将该绘制视图(最多 50 个视图)存储在 NSMutableArray 中,所有用户绘图都被擦除,视图会像初始阶段一样被加载。我还在该应用程序中使用了核心图框工作。我还使用分析器和仪器工具检查了我的应用程序中是否存在泄漏。

  1. 该应用程序可能存在什么问题?

2 。如何避免绘图视图被删除?

  1. 如何停止内存警告?

【问题讨论】:

    标签: ipad ios4 drawing nsmutablearray cgcontextdrawimage


    【解决方案1】:

    您无法阻止内存警告——它们是系统工作方式的一部分。当它需要更多内存时,它会向各种正在运行的应用发送警告,让它们释放不需要的内存。

    为防止您的绘图被删除,您需要将它们写入一个或多个文件,以便日后恢复它们。然后,您可以在收到警告时安全地释放图纸,并在需要时将其读回。

    【讨论】:

    • 你好迦勒,谢谢。如果我将图纸存储到图像中,然后将图像存储到 iPad 画廊或存储到内部,如 NSTemp 目录。哪个更好?
    • @user1341261 很难说什么是“更好”——我认为您希望将它们存储在应用程序的 Documents 目录中,但我真的不知道您的应用程序目标是什么...
    猜你喜欢
    • 2015-04-01
    • 2013-08-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多