我有以下点按处理功能。
@objc func handleTap(sender: UITapGestureRecognizer) {
switch sender.state {
case .ended:
let tapLocation = sender.location(in: mapView)
let coordinate = mapView.convert(tapLocation, toCoordinateFrom: mapView)
var tapLocationPlacemark = CLPlacemark()
//rest of code is irrelevant
default: break
}
}
问题是,当我在函数中初始化变量var tapLocationPlacemark = CLPlacemark()
时,单击某处会在函数末尾产生EXC_BAD_ACCES错误,但是,如果我在没有初始化的情况下声明它({{1或者我声明并将其初始化为全局变量,错误消失了。
我在文件的开头导入了CoreLocation,根据Objective-C文档,CLPlacemark也存在于Objective-C中,那么可能是什么问题呢?
错误详细说明:
打印tapLocationPlacemark的说明: 表达式产生错误:错误:/var/folders/z6/3w15l2r93vvf0237nsdxkhr80000gn/T/expr14-98259a..swift:1:65:错误:使用未声明的类型' CoreLocation' Swift._DebuggerSupport.stringForPrintObject(Swift.UnsafePointer(bitPattern:0x1290543a0)!。pointee)