iOS7下有时MKMapView中的字特别大的问题的解决

来源:互联网 发布:如何找到一元包邮 淘宝 编辑:程序博客网 时间:2024/05/18 00:59

在iOS7下,发现应用中的地图显示时,字特别大,如下。而在iOS6下是正常的。

经过分析发现原因如下:

  在MKMapView中,设置region后,MKMapView会调用regionThatFits方法,重新计算一个和frame比例匹配的region,重新设置地图的region

  但是在iOS7上,如果frame和设置的region比例相差较大,这个重新计算出的region就不准确,具体表现是地图上的汉字特别大。可能原因是在iOS7regiog的各项doublefloat类型转换时出了问题。同样代码,iOS6上就没有问题。

  解决方案就是在设置mapregion时,先根据地图的frame计算出符合frame比例的region来,以避免因为设置的regiog比例不合适,map在调用regionThatFits重新计算region时出错。

 

具体代码参考:

http://blog.csdn.net/nlforever/article/details/9075313

http://troybrant.net/blog/2010/01/mkmapview-and-zoom-levels-a-visual-guide/
http://troybrant.net/blog/2010/01/set-the-zoom-level-of-an-mkmapview/



0 0