百度地图viewWillAppear阻塞边缘手势pop


            百度地图的Demo中都会在页面的viewWillAppear:viewWillDisappear:方法中调用百度地图对应的viewWillAppearviewWillDisappear方法,以恢复之前存储的mapview状态存储当前mapview的状态,调用的过程可以这样来描述:
           当调用[mapView viewWillDisappear]方法后即存储当前mapview的状态后,mapView就会回到默认状态,显示的位置在北京天安门,[mapView viewWillAppear]又会重新设置状态,并且会重新渲染可见区域的瓦片

           虽然我觉得这样写并没什么卵用,反而会在viewWillAppear后重新渲染,但是既然Demo这样写也就无所谓了。

           但但但是,这样写竟然会影响到pop的边缘返回手势的流畅度,这就不能忍了:于是代码中我注释掉[mapView viewWillAppear][mapView viewWillDisappear]方法,这样返回就很流畅了(也不会有地图闪一下的情况)。

           看似很完美,但是旋转地图你会发现,地图的指南针不见了
百度地图viewWillAppear阻塞边缘手势pop_第1张图片

解决问题、、
updateViewConstraints中调用代码

[mapView viewWillAppear];

- (void)viewWillAppear:(BOOL)animated中调用代码

self.mapView.compassPosition = CGPointMake(15, 15);// 设置指南针位置

不在调用代码

[mapView viewWillDisappear];

这样就解决了指南针不显示的问题了

你可能感兴趣的:(百度地图viewWillAppear阻塞边缘手势pop)