我正在尝试加载地图区域,并且没有在第二次或后续加载时调用MKMapView委托方法.没有代表方法即
- (void)mapViewWillStartLoadingMap:(MKMapView *)mapView;
- (void)mapViewDidFinishLoadingMap:(MKMapView *)mapView;
- (void)mapViewDidFailLoadingMap:(MKMapView *)mapView withError:(NSError *)error;
Run Code Online (Sandbox Code Playgroud)
被称为.唯一的方法是
- (void)mapView:(MKMapView *)mapView regionWillChangeAnimated:(BOOL)animated;
- (void)mapView:(MKMapView *)mapView regionDidChangeAnimated:(BOOL)animated;
Run Code Online (Sandbox Code Playgroud)
似乎ios4正在缓存mapview tile图像.
我在MKMapViewDelegate协议参考文档中找到了这些行.突出显示的行是我的问题.
当加载了与当前请求关联的地图图块时,将调用此方法.当新的可见区域滚动到视图中并且图块尚不可用时,请求地图图块.对于当前不可见的地图部分,也可以请求地图图块.例如,地图视图可以根据需要加载紧邻当前可见区域的区块以处理用户的小平底锅.
我需要在加载地图后执行某些操作,但由于上述任何委托方法都没有被调用,我无法执行所需的功能.任何人都可以建议修复清除缓存或为此提供替代解决方案吗?我一直在使用中描述的方法已经尝试过在这里和这个,但我仍然没能得到代码工作.
当用户在选择注释时点击保存时,我正在尝试保存mapview的缩略图.当用户尚未放大该注释时,会出现此问题,因此尚未加载关闭缩放级别.
这是用户点击保存后我正在做的事情:
但是,当保存图像并且视图被取消时,实际保存的结果图像实际上还没有完成加载,因为我仍然看到带有网格线的卸载地图,如下所示:
我的问题是,在保存此缩略图之前,如何确保地图已完成加载并完成显示?