如何启用MKMapView 3D视图?

J. *_*coe 4 macos mapkit

我在一个窗口中有一个MKMapView,并且pitchEnabled是真的(我已经在调试器中证实了这一点).指南针中间的"3D"东西是灰色的,点击或拖动它什么都不做.选项 - 拖动地图(就像我在Maps.app中所做的那样)也没有做任何事情.

根据我对文档的解释,设置pitchEnabled应该让我使用3D视图,就像Maps.app那样.我错了吗?我还需要做些什么来让我的用户获得3D地图视图吗?

Geo*_*ell 6

您可以通过调整查看地图的摄像机角度并使建筑物可见来接近3D模式的体验.以下示例允许您以3D形式查看艾菲尔铁塔:

viewDidLoad() {
    super.viewDidLoad()

    mapView.mapType = MKMapType.Standard
    mapView.showsBuildings = true // displays buildings

    let eiffelTowerCoordinates = CLLocationCoordinate2DMake(48.85815, 2.29452)
    mapView.region = MKCoordinateRegionMakeWithDistance(eiffelTowerCoordinates, 1000, 100) // sets the visible region of the map

    // create a 3D Camera
    let mapCamera = MKMapCamera()
    mapCamera.centerCoordinate = eiffelTowerCoordinates
    mapCamera.pitch = 45
    mapCamera.altitude = 500 // example altitude
    mapCamera.heading = 45

    // set the camera property
    mapView.camera = mapCamera
}
Run Code Online (Sandbox Code Playgroud)

例子来自:这个问题