gpt4 book ai didi

ios - 使用 MapKit 的 swift 3 错误

转载 作者:行者123 更新时间:2023-11-30 12:27:05 25 4
gpt4 key购买 nike

我正在制作 map

在info.plist中添加两个变量“隐私 - 位置何时使用描述”、“隐私 - 位置始终使用描述”

错误:由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因:“无效区域”

我的代码:

import UIKit
import MapKit

class ViewController: UIViewController, CLLocationManagerDelegate {


@IBOutlet weak var map: MKMapView!

var manager: CLLocationManager!


override func viewDidLoad() {
super.viewDidLoad()

manager = CLLocationManager()
manager.delegate = self
manager.desiredAccuracy = kCLLocationAccuracyBest
manager.requestWhenInUseAuthorization()
manager.startUpdatingLocation()

let uilpgr = UILongPressGestureRecognizer(target: self, action:Selector(("action:")))
uilpgr.minimumPressDuration = 2.0
map.addGestureRecognizer(uilpgr)

}

func action(gestureRecognizer:UIGestureRecognizer){
if gestureRecognizer.state == UIGestureRecognizerState.began{
let touchPoint = gestureRecognizer.location(in: self.map)
let newCoordinate = self.map.convert(touchPoint, toCoordinateFrom: self.map)
let annotation = MKPointAnnotation()

annotation.coordinate = newCoordinate
annotation.title = "Meu lugar"
self.map.addAnnotation(annotation)



}
}


func locationManager(_ manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) {
let userLocation:CLLocation = locations[0]
let latitude = userLocation.coordinate.latitude
let longitude = userLocation.coordinate.longitude
let coordinate = CLLocationCoordinate2DMake(longitude,latitude)
let latDelta: CLLocationDegrees = 0.01
let lonDelta: CLLocationDegrees = 0.01
let span:MKCoordinateSpan = MKCoordinateSpanMake(latDelta, lonDelta)
let region:MKCoordinateRegion = MKCoordinateRegionMake(coordinate, span)
self.map.setRegion(region, animated: false)

}


override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}


}

最佳答案

我认为您忘记导入 CoreLocation 框架。我认为您没有从委托(delegate)方法中获得有效的位置对象。请导入CoreLocation框架并再次测试。

关于ios - 使用 MapKit 的 swift 3 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44056909/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com