我正在製作這個應用程序,用戶可以在其中看到他們自己的位置和其他用戶的位置。我剛剛得到了一個錯誤說主題1:EXC_BAD_INSTRUCTION
主題1:EXC_BAD_INSTRUCTION(代碼= EXC_1386_INVOP,子碼=爲0x0)
在這一行:
var lat = locationManager.location?.coordinate.latitude
我沒有設法解決它。
是什麼導致它,我該如何解決它?
對於任何誰可能會喜歡的其他代碼:
import UIKit
import Parse
import CoreLocation
import MapKit
class ViewController: UIViewController, MKMapViewDelegate, CLLocationManagerDelegate {
var myLocation: [CLLocation] = []
@IBOutlet weak var MapView: MKMapView!
@IBOutlet var UsernameTextField: UITextField!
@IBOutlet var PasswordTF: UITextField!
@IBOutlet var EmailTF: UITextField!
var locationManager: CLLocationManager!
override func viewWillAppear(animated: Bool) {
super.viewWillAppear(animated)
}
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
let locationManager = CLLocationManager()
let lat = locationManager.location!.coordinate.latitude
let lon = locationManager.location!.coordinate.longitude
let location = CLLocationCoordinate2D(latitude: lat, longitude: lon)
let span = MKCoordinateSpanMake(0.05, 0.05)
let region = MKCoordinateRegionMake(location, span)
MapView!.setRegion(region, animated: true)
let anotation = MKPointAnnotation()
anotation.coordinate = location
anotation.title = "My tittle"
anotation.subtitle = "My Subtitle"
MapView!.addAnnotation(anotation)
print("Welcome in MapViewController")
}
}
位置管理員應該是一個屬性,而不是局部變量。 – matt
是的,我的壞。現在錯誤向下移動,讓位置= CLLocationCoordinate2D(latitude:lat!,longitude:lon!) –
錯誤可能是由於使用'!'強制解包零可選引起的。你應該重寫你的代碼以避免使用'!'強制拆包選項。切換到可選綁定來確定意外的nil值的位置。 –