使用百度地图的时候我们经常遇到一些使用情况
A页面有mapView B页面也有
今天做了一个这个需求 在Push到B页面之后B页面无法拖动
后来发现坑爹的百度地图好多代理都是单例
所以要把每一个页面的代理放到生命周期里
例子
- (void)viewWillAppear:(BOOL)animated{
[super viewWillAppear:animated];
[self.mapView viewWillAppear];
self.mapView.delegate = self;
self.locationService.delegate = self;
self.geoSearcher.delegate = self;
self.routeSearch.delegate = self;
}
- (void)viewWillDisappear:(BOOL)animated{
[super viewWillDisappear:animated];
[self.mapView viewWillDisappear];
self.mapView.delegate = nil;
self.locationService.delegate = nil;
self.geoSearcher.delegate = nil;
self.routeSearch.delegate = nil;
}
这样B页面就正常了
网友评论