0

ユーザーの場所が iPhone マップキットで正常に検出されたときに発生するイベントはありますか?

現在地のピンがマップにドロップされた時点で Web サービスを呼び出したい。

4

2 に答える 2

3

MKMapViewそれ自体がユーザーの位置を表示している場合 (プログラムで " "mapView.showsUserLocation = YES;を使用するか、IB で "shows user location" をチェックして)、viewForAnnotationピンがドロップされるとマップ ビューが呼び出されます。以下を使用できます。

- (MKAnnotationView *)mapView:(MKMapView *)aMapView viewForAnnotation:(id <MKAnnotation>)annotation 
{
  if ([annotation isKindOfClass:MKUserLocation.class]) {
    // Call web service here
    return nil;
  }
}

nil を返すと、ユーザーの場所にデフォルトのピンを使用するようにマップ ビューに指示します (アニメーション付きの青い点)。コントローラーを に設定することを忘れないでくださいMKMapViewDelegate

于 2009-11-19T21:17:41.457 に答える
1

startUpdatingLocationCLLocationManger オブジェクトを作成し、メソッドを呼び出す必要があります。場所が見つかって更新されると、CLLocationMangerDelegate メソッド

- (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation

自動的に呼び出されます。このメソッドを再実装して、ここから Web サービスを呼び出すことができます。

于 2009-11-19T15:24:44.120 に答える