当我在新视图中使用导航控制器打开 MapView 时,不等到地图加载,然后单击后退按钮 - 我抛出异常。谁能证实这一点?什么是变通方法?
问问题
1118 次
2 回答
4
你释放你的导航控制器时释放地图视图吗?
在委托被释放后,地图视图可能正在向其委托(您的导航控制器)发送消息。
在释放它之前尝试将 mapview 的委托设置为 nil。
于 2009-06-29T21:48:36.563 回答
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];
}
于 2009-07-01T12:10:12.623 回答