Ios 使用Swift以编程方式在Mapkit中倾斜贴图

Ios 使用Swift以编程方式在Mapkit中倾斜贴图,ios,swift,mapkit,Ios,Swift,Mapkit,我想在启动时倾斜地图。(与用户用两个手指向上或向下滚动时相同) 是否可以使用Swift?MKMapView类参考: 查看摄像机属性: 摄影机对象在地图曲面上方定义一个点,从该点可以查看地图。将摄影机应用于地图可以使地图具有类似3D的外观。可以使用摄影机旋转地图,使其朝向与用户的航向相匹配,或应用俯仰角来倾斜地图平面 将新摄影机指定给此属性会立即更新贴图,而不会设置更改的动画。如果要设置摄影机位置更改的动画,请改用setCamera:animated:方法 不能将此属性设置为nil。若要将贴图恢复

我想在启动时倾斜地图。(与用户用两个手指向上或向下滚动时相同)


是否可以使用Swift?MKMapView类参考:

查看
摄像机
属性:

摄影机对象在地图曲面上方定义一个点,从该点可以查看地图。将摄影机应用于地图可以使地图具有类似3D的外观。可以使用摄影机旋转地图,使其朝向与用户的航向相匹配,或应用俯仰角来倾斜地图平面

将新摄影机指定给此属性会立即更新贴图,而不会设置更改的动画。如果要设置摄影机位置更改的动画,请改用setCamera:animated:方法

不能将此属性设置为nil。若要将贴图恢复为平面外观,请应用俯仰角为0的摄影机,这将生成一个向下直视贴图曲面的摄影机

尝试创建并设置摄影机(是否设置动画)

编辑:

我试过了。下面是一个如何使用它的示例:

let userCoordinate = CLLocationCoordinate2D(latitude: 58.592725, longitude: 16.185962)
let eyeCoordinate = CLLocationCoordinate2D(latitude: 58.571647, longitude: 16.234660)
let mapCamera = MKMapCamera(lookingAtCenterCoordinate: userCoordinate, fromEyeCoordinate: eyeCoordinate, eyeAltitude: 400.0)

let annotation = MKPointAnnotation()
annotation.setCoordinate(userCoordinate)

mapView.addAnnotation(annotation)

mapView.setCamera(mapCamera, animated: true)

您必须根据您想要的位置和倾斜效果找到您的右眼坐标。

Swift 4

这是一种更简单的方法:您可以设置距离、俯仰和航向:

let mapCamera = MKMapCamera(lookingAtCenter: userCoordinate, fromDistance: 10000, pitch: 65, heading: 0)
map.setCamera(mapCamera, animated: true)

我加了一个例子:)完美的先生。非常感谢。