当我在新视图中使用navigationcontroller打开MapView,然后不等待地图加载,然后单击后退按钮 - 我抛出异常。谁能证实这一点?什么是解决方法?
答案 0 :(得分:4)
您在解除分配导航控制器时是否正在发布mapview?
在委托发布后,mapview可能会向其代理人(您的导航控制器)发送消息。
尝试在发布之前将mapview的委托设置为nil。
答案 1 :(得分:1)
我有这个确切的错误。
它是由你的类中的一些委托方法引起的,一旦你弹出那个类并且地图忙于做事,它就会试图调用已经留下内存的类。
我只是添加了
- (void)dealloc
{
// release the map delegate otherwise it will try and call our classes with no data.
// map for me is my MKMapView
map.delegate = nil;
[super dealloc];
}