我有一個MKMapView
。要更改顯示的區域我用MKMapView setRegion:動畫:在模擬器上工作,但不在設備上iOS6
[self.mapView setRegion:region animated:YES];
奇怪的是,在模擬器中的區域與動畫的改變,但在設備上的變化是直接而不是動畫。
我改變該地區在地圖上長按後...
這種行爲讓我瘋狂,我不能能解決它...... 謝謝...
我有一個MKMapView
。要更改顯示的區域我用MKMapView setRegion:動畫:在模擬器上工作,但不在設備上iOS6
[self.mapView setRegion:region animated:YES];
奇怪的是,在模擬器中的區域與動畫的改變,但在設備上的變化是直接而不是動畫。
我改變該地區在地圖上長按後...
這種行爲讓我瘋狂,我不能能解決它...... 謝謝...
您需要通過使用下面的代碼
[self performSelector:@selector(setMapRegion) withObject:nil afterDelay:3.0];
-(void) setMapRegion
{
[self.mapView setRegion:region animated:YES];
}
我不這麼認爲會影響。 –
它幫助我很多 – Vinodh
如果加載的設備和iOS地圖6+你會經歷一個有點延遲,直到瓦片被加載,從而做到的最好的事情就是儘量拖延放緩setRegion該地區的變化。
即使您設置了動畫,地圖也無法響應,它對您而言不會顯得那麼清晰,它看起來好像沒有製作任何動畫。
MKMapView
一旦地圖加載了所有必要的圖塊並準備使用,就會調用它的代理方法mapViewDidFinishLoadingMap:
。那裏你應該打電話setRegion:animated:
。
您在ios 7上測試過嗎? – VivienCormier
當你嘗試在設備上設置區域時,你是否嘗試過延遲?我在考慮地圖加載速度不夠快。 – soryngod
@soryngod你能解釋得更好嗎?因爲我不明白你的意思...... – Fry