func forwardGeocoding(address: String) {
CLGeocoder().geocodeAddressString(address, completionHandler: { (placemarks, error) in
if error != nil {
print(error)
return
}
if placemarks?.count > 0 {
let placemark = placemarks?[0]
let location = placemark?.location
let coordinate = location?.coordinate
print("\nlat: \(coordinate!.latitude), long: \(coordinate!.longitude)")
if placemark?.areasOfInterest?.count > 0 {
let areaOfInterest = placemark!.areasOfInterest![0]
print(areaOfInterest)
} else {
print("No area of interest found.")
}
}
})
var INITIAL_DESTINATION = forwardGeocoding(initialDestination)
var DESIRED_DESTINATION = forwardGeocoding(desiredDestination)
var location = CLLocationCoordinate2DMake(<#T##CLLocationDegrees#>, <#T##CLLocationDegrees#>)
こんにちは、私はマッピングアプリを作ろうとしており、この部分に問題があります。私がしたいことはINITIAL_DESTINATION
の緯度と経度を分けることができます。 CLLocationCoordinate2DMake
を作成するには、これを行う必要があります。私がしようとしてきたのは、INITIAL_DESTINATION.latitude
とINITIAL_DESTINATION.longitude
を使用していますが、私は同じエラーである"Value of tuple type "()" has no member "latitude"
に続いています。これはまた、INITIAL_DESTINATION.longitude
のエラーを与えないので、奇妙です。速い地理緯度経度と経度の分離とCLLocation2DMakeへの作成
ご意見やご提案は大変ありがとうございます。お読みになり、お返事いただきましてありがとうございます。
ボイド関数だと言われていたので、最初に '?coordinate.latitude'と' return coordinate?.longitude'を返そうとしたときにエラーが発生しましたので、 'func forwardGeocoding (address:String) - > Double'ですが、それでも私にはエラーが出ます。それを修正するための提案はありますか?同様に、私が補完ハンドラに追加するものを詳しく教えてください。読んでいただきありがとうございます。 –
関数が復帰するのに役立つものは何もありません。補完ハンドラは、おそらく更なる処理の目印を渡す関数を呼び出す必要があります。 – Feldur
この関数で行う唯一の目的は、緯度浮動小数点数と経度浮動小数点数を返すことです。 –