1

このコードを実行する:

NSLog(@"%f", MKMetersBetweenMapPoints(MKMapPointMake(33.6523, -118.507), MKMapPointMake(34.516, -117.628)));

これを返します:

0.015819

期待される出力が約136900になる場合。私は何が間違っているのですか?

4

1 に答える 1

4

に通常の緯度と経度を指定しているようですMKMapPointMake()。には、緯度と経度ではなく、 andとvalueMKMapPointが含まれます。xy

を使用MKMapPointForCoordinate(myLocation)して場所をマップポイントに変換し、それらをMKMetersBetweenMapPoints()関数に渡します。

または、さらに簡単に-distanceFromLocation:、2つのCLLocationオブジェクトで使用します。地球の曲率を考慮して、メートル単位の距離を返します。

于 2012-05-13T10:37:35.410 に答える