实例方法'mapView(_:didFailToLocateUserWithError :)'几乎匹配可选要求

问题描述 投票:0回答:1

我在我的应用程序中使用MKMapView它工作正常。我可以通过didUpdate userLocation方法正确获取更新的位置。

我的问题是:

实例方法'mapView(_:didFailToLocateUserWithError :)'几乎匹配协议'MKMapViewDelegate'的可选要求'mapView(_:didFailToLocateUserWithError :)'

笔记:

  • 我写的方法完全如下: func mapView(_ mapView: MKMapView, didFailToLocateUserWithError error: Error) { //code }
  • 我已经实施了正确的协议:MKMapViewDelegate
  • 方法didUpdateUserLocation正常工作。
  • 我正在使用Xcode 9.2,部署目标:10.0,Swift 3.2。
  • 我在方法签名处添加了@nonobjc并且没有出现警告,但是从不执行该方法。
ios swift delegates mapkit
1个回答
0
投票

确保添加此内容

 mapView.showsUserLocation = true

并检查授权

let locationManager = CLLocationManager()
if CLLocationManager.authorizationStatus() == .notDetermined {
  locationManager.requestWhenInUseAuthorization()
} else if CLLocationManager.authorizationStatus() ==   .authorizedWhenInUse {
   mapView.showsUserLocation = true
} else {
   //show alert
}
© www.soinside.com 2019 - 2024. All rights reserved.