2

この問題には明らかな解決策があると確信していますが、しばらくの間さまざまなことを試してきましたが、それがわかりません。基本的に、私は2点間の距離を取得しており、DoubleからIntに変換しようとしています(すべての小数点を削除するため)が、私が試したことはすべてうまくいきませんでした.

これは私のコードです:

let userLocation = CLLocation(latitude: mapView.userLocation.coordinate.latitude, longitude: mapView.userLocation.coordinate.longitude)
let annotationLocation = CLLocation(latitude: latitudePassed, longitude: longitudePassed)

var distance = CLLocationDistance(annotationLocation.distanceFromLocation(userLocation))

if distance > 1000 {
    distance = distance / 1000
    rideAnnotation.subtitle = "\(distance) kilometer(s)"
} else {
    rideAnnotation.subtitle = "\(distance) meters"
}

文字列に変換してからintに変換し、intに変換するtoInt()など、いくつかのことを試みましたが、成功しませんでした。

誰にも提案はありますか?

4

1 に答える 1

5

私は何かが欠けている可能性がlet distanceInt = Int(distance)ありますが、あなたが望むことを正確に行いませんか?

于 2015-07-06T22:57:25.277 に答える