【发布时间】:2010-11-22 22:21:40
【问题描述】:
我有一个 UIViewController 子类,它为 tableview 中的每个单元格异步加载一堆图像,由单独的下载类处理。我将所有这些下载请求的列表保存在一个字典中,该字典以请求图像的单元格的索引为关键字。
我的问题是,如果视图控制器从导航控制器中弹出,我应该将取消图像下载的代码放在哪里?我需要这样做,因为如果用户在下载静止图像时回击(这可能需要一段时间),那么当他们完成下载时,viewcontroller 已经被释放。
我不能将它放在 viewWillDisappear 方法中,因为如果用户单击单独的选项卡并且仅在单击后退按钮时,我不想停止下载。现在我把这段代码放在 viewcontrollers dealloc 方法中,虽然由于某种原因它看起来不正确,但它工作正常。我想过使用 viewDidUnload 方法,但似乎只有在内存不足警告时才会调用它?
有什么想法吗?
【问题讨论】: