私は2つのビューコントローラ:tweetViewController
とMapViewController
を持っています。前者はユーザがツイートを投稿するためのもので、その中に私はCLLocationManager
を使用してユーザの場所を取得します。 locationManager:didUpdateToLocation:fromLocation:
が呼び出されると、私は "locationA"を取得しました。彼の位置が設定されていることをユーザーに思い出させます。iOS:CLLocationManagerから取得した位置とMKMapViewのuserLocationプロパティの違い
ユーザーは「locationA」でツイートを投稿できます。または、位置情報をクリックして位置を手動で変更します(場所が正確でない場合に備えて)。この場合、MapViewController
がプッシュされ、locationAに関連付けられたドラッグ可能なピン注釈がマップに落ちます。ピンは私がどこから数百メートル離れているのがわかりました。次に、mapView.showUserLocation = YES
を設定します。そして私は、青い泡の位置がピンよりはるかに正確であることを発見しました。ですから、私の質問は、CLLocationManager
からの位置ではなく、tweetViewController
のmapViewのuserLocation
を取得する方法です。
私は中国にいるので、同じ問題を探しています。一部の人々は中国の地図が変形されていると言っているので、オフセットがあるはずです。問題に対処するための提案はありますか? ありがとうございます。
ロケーションマネージャの精度と距離フィルタの設定を正しく設定しましたか?通常はデフォルトが最良の精度を与えます。また、デリゲートイベントに基づいて場所を正しく更新していますか? CLLocationManagerを使用して位置を更新すると、連続した近似(セルラー信号、GPS信号)または最初に返された位置が非常に不正確になることがあります。 old):常に "newLocation"タイムスタンプをチェックし、現在の日付と比較します。 – viggio24
私はdesiredAccuracy = kCLLocationAccuracyBestとdistanceFilter = 5.0fを設定しました。これは十分正確だと思います。私は5回のように、何回か呼び出されたデリゲートメソッドを取得することができますし、その場所は安定しています。デリゲートの呼び出しはもう必要ありません。次にmapViewControllerを押します。しかし、locationManagerの位置は、mapViewのuserLocationから数百メートル離れています...何か手掛かり? –