在我的应用程序中,如果用户将“文本大小”(在“设置”>“常规”>“文本大小”下)滑动到较大的值,则 MKMapView 中的城市标签会被放大。我确信这在许多或大多数情况下都是有意和需要的,但对于我的应用程序,大标签会混淆地图注释本身。这使得很难将地图注释/覆盖(这是应用程序的中心焦点)与其在地图上的确切位置相关联。
有没有办法选择退出地图中的动态文本,以便文本大小更改不会影响它?
在我的应用程序中,如果用户将“文本大小”(在“设置”>“常规”>“文本大小”下)滑动到较大的值,则 MKMapView 中的城市标签会被放大。我确信这在许多或大多数情况下都是有意和需要的,但对于我的应用程序,大标签会混淆地图注释本身。这使得很难将地图注释/覆盖(这是应用程序的中心焦点)与其在地图上的确切位置相关联。
有没有办法选择退出地图中的动态文本,以便文本大小更改不会影响它?
好吧,如果您查看文档,您会发现要支持动态大小,您必须在对象上使用 iOS 7 中引入的新 UIFont 方法。要不支持动态大小,您可能必须将所述标签的字体更改为固定大小。话虽如此,据我所知,MapKit 框架无法更改这些标签的字体。然而,一个快速的网络搜索让我发现 MKOverlay 和 MKAnnotation 类是唯一与字体和 MKMapView 相关的东西。
更新:正如 Apple 指出的那样(https://devforums.apple.com/message/931571#931571),唯一改变它的方法是使用 iOS 7 中的新 API 调整字体标签。