【问题标题】:How to display entire globe in MKMapView如何在 MKMapView 中显示整个地球
【发布时间】:2018-01-21 19:31:37
【问题描述】:

我正在开发一个地图应用程序,我想让用户缩小到整个地球。我正在使用 MKMapView。我看到iOS地图应用程序中提供了此功能。

谁能告诉我如何在我的应用中实现同样的效果。

【问题讨论】:

标签: ios swift swift3 mapkit mkmapview


【解决方案1】:

因为下面有这么多错误的信息,真是太难过了。
至少在 2018 年 11 月的 iOS 12 中,这很容易做到。

这就是您获得全球视野所需要做的一切。

任何一个

mapView.mapType = .satelliteFlyover 

mapView.mapType = .hybridFlyover

(我不确定,它没有技术基础,但感觉 .hybridFlyover 在我的经验中显示出更好的性能)

不过就是这样 :p;;
我确保它有效,因为我之前就做过。

希望对你有用。

【讨论】:

  • 好像一点也不悲伤。如果你注意日期,这些答案都是在 iOS 12 发布之前发布的。如果您有新的更好的说法,请不要在此之前抹黑一切和其他所有人。
  • 超级有用且正确。还是一样,Swift 5.5,2021 年 12 月。我希望其他开发者支持你的答案。
【解决方案2】:

将地图更改为混合天桥或卫星天桥 并从情节提要启用 3D 视图

从 viewDidLoad 调用这个函数 updateMapToShowGlobe(location: mapView.centerCoordinate)

// MARK: Snippet to show full globe in 3d view
private func updateMapToShowGlobe(location :CLLocationCoordinate2D) {
    let span = MKCoordinateSpanMake(130, 130)
    let region = MKCoordinateRegionMake(location, span)
    if( region.center.latitude > -90 && region.center.latitude < 90 && region.center.longitude > -180 && region.center.longitude < 180 ){
        mapView.setRegion(region, animated: true)
    }
}

【讨论】:

    【解决方案3】:

    据 Apple 的一位技术支持人员称,使用 MapKit 似乎无法访问此视图:

    此视图在 MapKit 中不可用。

    https://forums.developer.apple.com/thread/101479

    【讨论】:

    • 苹果的技术支持人员之前好像搞错了,链接里确实提到了错误的信息。
    猜你喜欢
    • 2012-06-21
    • 1970-01-01
    • 2012-02-21
    • 2014-11-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-20
    • 2016-10-14
    相关资源
    最近更新 更多