0

ここに画像の説明を入力

A という Rose ピンの位置を知っていて、写真のようになっています... 今、やりたいことはこれです。

私のアプリのユーザーが半径 1 km の赤い円の中にいるとき、私のアプリは彼がトゥール エッフェルにいると言う必要があります。

どうやってやるの?位置を取得する必要があることは理解していますが、その後、現在の位置を中心に半径 1 km を検索するにはどうすればよいですか? ありがとう

*編集* ありがとうございます

 if ([region containsCoordinate:self.map.userLocation.coordinate]) {
                    miTrovoIn = street;
                }

しかし、地図に自分の位置を表示しないと、このコードは機能しません。自分の位置を確認し、自分の位置を共有すると機能します。ユーザーの操作なしで、アプリに自分の位置を自動的に取得させるにはどうすればよいですか? ありがとう

4

1 に答える 1

0

CLRegionを作成します。ドキュメントから:

The CLRegion class defines a geographical area that can be tracked. When an instance of this class is registered with a CLLocationManager object, the location manager generates an appropriate event whenever the user crosses the boundaries of the defined area.

centerとradiusのプロパティを希望の値に設定します。startMonitoringForRegion:desiredAccuracyを呼び出します。ユーザーが定義された領域の境界を超えたときに生成される通知を使用するのではなく、ユーザーの場所をテストする必要がある場合は、CLRegionクラスのcontainsCoordinate:インスタンスメソッドがあります。

double lat = 48.86;
double lng = 2.29;
CLLocationCoordinate2D centerCoordinate = CLLocationCoordinate2DMake(lat, lng);
CLRegion *region = [[CLRegion alloc] initCircularRegionWithCenter:centerCoordinate radius:1000.0 identifier:@"your identifier"];

http://developer.apple.com/library/IOs/#documentation/CoreLocation/Reference/CLRegion_class/Reference/Reference.html

于 2012-09-26T17:45:26.203 に答える