2
이 코드는 이전에 작동 했었지만 이제는 위치가 0으로 돌아 오기 때문에 충돌이 계속 발생합니다. 이 오류의 출처 또는 해결 방법을 모르겠습니다. 내가 말할 수있는 것부터, 제 코드는 정확합니다. 어떤 도움이 필요합니까?신속한 위치가 되돌아 오지 않음
import UIKit
import CoreLocation
import MapKit
class LocationController: UIViewController, CLLocationManagerDelegate, MKMapViewDelegate {
var locationManager = CLLocationManager()
@IBOutlet var Map: MKMapView!
var manager:CLLocationManager!
var myLocations: [CLLocation] = []
override func viewDidLoad()
{
super.viewDidLoad()
self.Map.mapType = MKMapType.Standard
self.Map.showsUserLocation = true
//self.Map.removeAnnotations(self.theMap.annotations)
locationManager.delegate = self
locationManager.desiredAccuracy = kCLLocationAccuracyBest
locationManager.requestAlwaysAuthorization()
locationManager.startUpdatingLocation()
let location = self.locationManager.location
var latitude: Double = location.coordinate.latitude
var longitude: Double = location.coordinate.longitude
println("current latitude :: \(latitude)")
println("current longitude :: \(longitude)")
}
충돌이 발생한 행을 알려주시겠습니까? – zaph
문서에서 : "위치 데이터를 검색하지 않으면이 속성의 값은 nil입니다." 반환 된 값을 처리하지 않아야합니다. – zaph
다음 행을 사용하여 locationManager의 위치에 액세스하려고하면 :'location = self.locationManager.location' 바로 다음 행으로 위치 관리자의 업데이트를 시작하십시오 :'locationManager.startUpdatingLocation()'그것은 위치 관리자 의심의 여지없이 위치를받은 충분한 시간을 가지지 못했을 것입니다. 'didUpdateLocations'가 호출 될 때까지 기다렸다가 위치를 찾았는지 확인하십시오. –