1

私のアプリでは、関心のある領域をピンポイントで示しています。また、現在地のGPSもありますが、アプリでユーザーの距離を計算して表示するにはどうすればよいですか?

私の.hファイルは、マップビュー、現在地を検索するためのボタン、およびマップ/衛星ビューとハイブリッドビューのどちらかを選択するためのマップオプションを設定するように設定されています。

.mファイルには、場所と現在地を設定するすべてのコードがあり、追跡モードも有効になっています。また、さまざまなマップビューを設定し、マップにピンポイントを設定し、緯度と経度を設定してから、ズームとスクロール機能を有効にします。また、地図上で特定のエリアをクリックすると、その場所の名前と簡単な説明が表示されるように設定しました。したがって、この時点ではすべてが正常に機能します:D

私は本当に自分のポイントと特定されたエリアの間の距離を見つける方法を見つける必要があります。

*私はMapKitを使用していることに注意してください!

4

1 に答える 1

2

ここで、CLLocationManagerのデリゲートメソッドで次のコードを使用すると、現在のポイントから宛先ポイントまでの距離が返されます。

- (void)locationManager:(CLLocationManager *)manager 
    didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation {
    CLLocation *appleHQ = [[CLLocation alloc] initWithLatitude:37.322998 longitude:-122.032182];////here put your destination point

    NSLog(@"New Location:%@", newLocation);
    CLLocationDistance distance = [newLocation distanceFromLocation:appleHQ];
    NSLog(@"Distance to Apple HQ %4.0f km", distance);
    [appleHQ release];
}

このコードを試してみてください...希望、これはあなたを助けます。

于 2012-05-12T11:31:25.470 に答える