我正试图找到一种方法,使用MapKit在Xcode上实现“当前位置”。
如果我已有地图,可以采取哪些措施?
谢谢!
答案 0 :(得分:1)
要获取当前位置,我们需要利用CLLocation
,因此将框架导入您的应用程序,这将为您提供获取用户位置的功能。接下来,您需要添加一个PLIST条目,提醒用户询问他们是否希望您的应用使用位置服务。您可以通过添加NSLocationAlwaysUsageDescription
或NSLocationWhenInUseUsageDescription
并为其设置字符串值来执行此操作。此字符串值将是用户在提示中读取的内容。然后,在您选择的功能中,您将使用与此类似的代码(POC代码,根据需要进行编辑):
class MyClass: UIViewController, CLLocationManagerDelegate, MKMapViewDelegate {
// Making the class conform to the CLLocationManagerDelegate and the MKMapViewDelegate
let locationManager = CLLocationManager()
override func viewDidLoad() {
super.viewDidLoad()
locationManager.requestAlwaysAuthorization()
mapLocations.showsUserLocation = true
let mapCenter = mapLocations.userLocation.coordinate
self.mapLocations.setUserTrackingMode(MKUserTrackingMode.Follow, animated: true);
}
在此代码中,我们首先请求用户授权。如果他们选择是,我们会显示用户位置。