5

これまでのところ、これは私が持っているコードです。locValue.latitude と locValue.longitude の値を文字列または整数として保存しようとしています。メソッド ( -> String など) で戻り値の型を定義しようとしましたが、didChangeAuthorizationStatus メソッドがプロトコル CLLocationManagerDelegate のオプションの要件メソッド locationManager と競合しているというエラーが表示されます。

func locationManager(manager: CLLocationManager, didChangeAuthorizationStatus status: CLAuthorizationStatus) {
    if status == .AuthorizedAlways {
        let locValue:CLLocationCoordinate2D = manager.location!.coordinate
        self.dispLocation.text = "locations = \(locValue.latitude) \(locValue.longitude)"
    }
}
4

2 に答える 2

8

2 つの文字列を宣言するだけ

var lat  = ""
var long = ""

そして、あなたの場所から解析latし、long

func locationManager(manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) {
    let location:CLLocationCoordinate2D = manager.location!.coordinate
    lat = String(location.latitude)
    long = String(location.longitude)
}
于 2016-03-21T22:25:40.723 に答える
3

これを試すこともできます-

func locationManager(manager: CLLocationManager, didUpdateLocations locations: [CLLocation])
{
    var locValue:CLLocationCoordinate2D = CLLocationCoordinate2DMake(0, 0);

    if manager.location?.coordinate != nil {
        locValue = (manager.location?.coordinate)!
    }

    let locations = "locations = \(locValue.latitude) \(locValue.longitude)"
    print(locations)
}
于 2016-03-21T22:50:07.133 に答える