我正在构建使用标签栏的应用程序。
我说A& B标签。
我试图在视图卸载视图时执行卸载方法。但是,它没有用。
有谁能建议我如何解决这个问题?
答案 0 :(得分:3)
在标签栏控制器加载的每个视图中,我添加了self.view = nil;对于每个视图都会消失方法。这解决了问题。可能会有所帮助。
答案 1 :(得分:1)
如果没有看到您的代码,就很难回答。可能有很多可能的原因。但是,我的第一个猜测是您将NSURLConnection完成处理程序分派到主队列并尝试更新不再同步的UI。
换句话说,从标签A开始,下载以异步方式开始。然后切换到UI中的选项卡B,在另一个队列上开始第二次下载。您的选项卡下载完成,然后将完成处理程序分派到主队列。在该完成处理程序中,您可能有代码,例如,在选项卡A上重新加载UITableView。但由于您不再在选项卡A上,该视图控制器(及其所有相关视图)当前不存在于您的程序中&# 39;生命周期。如果您没有正确检查零响应等,则可能会导致崩溃。
另一个不太可能的可能性是你的内存不足。易于测试:只需在浏览应用程序时监控内存使用情况。如果应用程序没有正确响应内存警告,您的应用可能会崩溃。如果您使用的是NSURLCache,并且同时为两个下载请求提交了太多内存,那么这是可能的。