0

シンプルなiPhoneアプリでMapViewとCoreLocationを使用しています... CoreLocationは緯度と経度を正しく示しています:

[Session started at 2012-07-08 20:11:35 +0200.]
2012-07-08 20:11:37.082 WhereAmI[5095:207] <+52.37609766, +4.92279518> +/- 70.00m (speed    0.00 mps / course -1.00) @ 7/8/12 8:11:33 PM Central European Summer Time
2012-07-08 20:11:38.605 WhereAmI[5095:207] <+52.37609766, +4.92279518> +/- 70.00m (speed 0.00 mps / course -1.00) @ 7/8/12 8:11:38 PM Central European Summer Time

しかし、私が実行すると:

[mapView setShowsUserLocation:YES];

強調表示されている場所はカリフォルニアの AppleHQ であり、アムステルダムではありません <+52.37609766, +4.92279518>?

コンソールのログから、この「ユーザーの場所のビューが表示されていません」というエラーが見つかりました。

2012-07-08 20:11:46.600 WhereAmI[5095:207] User location view is NOT visible but should be. Showing....

私はこれを検索し、実行するように勧められました:

mapView.userLocationVisible;

これは正常に実行されますが、違いはありませんか?

4

2 に答える 2

1

Xcode でシミュレートされた場所を使用していないことを確認してください。デバッグ バー (下図) の矢印ボタンをクリックし、[場所をシミュレートしない] を選択します。添付の写真では、必要なボタンが右側にあります。

編集:この回答は、Xcode 4 以降にのみ適用されます。Xcode 3 にはロケーション シミュレーション機能はありません。

欲しいボタンはこの写真の右側にあります

于 2012-07-08T20:27:14.857 に答える
0

mapView.userLocationVisible を実行しても、それ自体は何もしません。それはあなたに価値を与え、あなたはそれを使って何かをする必要があります。

青色のピンがカリフォルニア (古い XCode でシミュレーターを使用するときに表示される唯一の場所) に表示され、アムステルダムで緯度/経度を読んでいる場合は、それらの緯度/経度をどのように取得しているかを示す必要があります。 iOS は一度に 2 つの場所にあるとは認識できないため、そのうちの 1 つを手動で設定する必要があります。

あなたの場所を見るように地図ビューを設定することになると、UserTrackingMode をお勧めしますが、XCode 3.x を使用している場合は、おそらく最新の iOS ではないので、試してください。

- (void)setCenterCoordinate:(CLLocationCoordinate2D)coordinate animated:(BOOL)animated

または、クラス リファレンスhttp://developer.apple.com/library/ios/#DOCUMENTATION/MapKit/Reference/MKMapView_Class/MKMapView/MKMapView.htmlの「マップの表示部分の操作」セクションにある関連関数のいずれか

于 2012-07-09T20:42:13.217 に答える