问题1:UIView不会被释放--block中若是有self的话会形成循环引用

程序使用的是 UINavigationController 。api

使用tableView来显示对应的城市,在下载离线地图的时候,经过高德地图的一个api来下载,下载过程当中,使用异步线程进行ui界面更新。这个异步

 dispatch_async(dispatch_get_main_queue(), ^{
     更新UI界面。更新相应的cell信息。
 }

在下载过程当中,若是返回到上一个界面。离线下载界面一直不会dealloc。async

最后找到缘由,是在下载的block中用到了self。ui

解决办法:spa

__weak OfflineViewController *weakSelf = self;

 dispatch_async(dispatch_get_main_queue(), ^{
     [weakSelf 更新界面的方法] 
 }
相关文章
相关标签/搜索