【发布时间】:2012-08-09 06:50:10
【问题描述】:
我在 iPod touch 上运行我的 iOS 应用程序,我似乎收到了很多内存警告。不知道为什么会这样,我使用了 Instruments 并且我没有使用那么多内存。无论如何,有时在收到内存警告后,工具栏上的某些 UIBarButtonItems 会消失(例如,导航控制器中的后退按钮)。
这是一个真正的问题,唯一的解决方法是终止应用并重新启动。我该如何处理这种情况?也许有办法重新加载栏按钮项目?有没有人遇到过类似的情况,你会怎么做?
感谢您的帮助。
编辑:我应该补充一点,我的 UIBarButtonItems 有自定义图像。我在 viewDidLoad 中设置了这些图像。也许内存不足警告会释放这些图像,然后它们就不会再次加载。我想可能是这样,但是我如何确保如果视图再次出现,图像会再次加载?
EDIT2:问题似乎是在 viewDidUnload 我将 BarButtonItems 之一设置为 nil。我认为这实际上是在我设置 IBOutlet 时由 XCode 自动插入的。这是正确的做法,还是我不应该将其设置为零。如果是这样,我以后如何正确重新分配它?
【问题讨论】:
标签: objective-c ios memory warnings memory-leaks