? ? ? ? ? ? 百度地圖的Demo中都會在頁面的viewWillAppear:
和viewWillDisappear:
方法中調用百度地圖對應的viewWillAppear
和viewWillDisappear
方法,以恢復之前存儲的mapview狀態
和存儲當前mapview的狀態
,調用的過程可以這樣來描述:
? ? ? ? ? ?當調用[mapView viewWillDisappear]
方法后即存儲當前mapview的狀態
后,mapView就會回到默認狀態,顯示的位置在北京天安門,[mapView viewWillAppear]
又會重新設置狀態,并且會重新渲染可見區域的瓦片
? ? ? ? ? ?雖然我覺得這樣寫并沒什么卵用,反而會在viewWillAppear
后重新渲染,但是既然Demo這樣寫也就無所謂了。
? ? ? ? ? ?但但但是,這樣寫竟然會影響到pop
的邊緣返回手勢的流暢度,這就不能忍了:于是代碼中我注釋掉[mapView viewWillAppear]
,[mapView viewWillDisappear]
方法,這樣返回就很流暢了(也不會有地圖閃一下的情況)。
解決問題、、
在updateViewConstraints
中調用代碼
[mapView viewWillAppear];
在- (void)viewWillAppear:(BOOL)animated
中調用代碼
self.mapView.compassPosition = CGPointMake(15, 15);// 設置指南針位置
不在調用代碼
[mapView viewWillDisappear];
這樣就解決了指南針不顯示的問題了