MKMapView setRegion:动画:在模拟器上工作,但不在设备上iOS6
我有一个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