iOS百度地图 多页面均有BMKMapView的处理方法

使用百度地图的时候我们经常遇到一些使用情况
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页面就正常了

你可能感兴趣的:(iOS百度地图 多页面均有BMKMapView的处理方法)