アプリは、現在の場所を使用できるようにした後、0,0に設定mkmapview.userslocationプロパティ
-
19-09-2019 - |
質問
は、初めてのユーザがmap.userslocationプロパティは0,0の座標を有する現在の位置を使用しよう。次回は、私は、ユーザーの位置が常に発見されたマップを含むビューをロードします。
私はのviewDidLoadでYESにmap.showsUserLocationプロパティを設定していますし、ときに画面上の地図の負荷青い点がありますが、私はmap.userlocation.coorinateで座標を取得しようとすると、彼らは0,0です。
プログラムの流れは行きます - (無効)のviewDidLoad: 1)にshowUserLocation設定YES 2)map.userLocationプロパティからユーザの位置をつかむ6秒後にメソッドを呼び出すためにタイマーを設定
- (無効)getUsersLocation 1)ユーザの位置を印刷
このプロセスでは、私はビューをロードした後、初めて素晴らしい作品が、最初の時間は、ビューがlaodedされ、ユーザは、座標が戻ってくる彼らの場所を使用する権限を付与する必要があります0,0。
これがなぜ起こるか誰もが任意のアイデアを持っていると私はそれを回避することができますどのように?
ありがとうございます。
解決
のではなく任意に6秒を待って、あなたはCLLocationManagerDelegate
を実装し、気付いしなければならないとき
locationManager:didUpdateToLocation:fromLocation:
あなたはそれよりも、多かれ少なかれ時間がかかる場合があります最初の位置更新を与えるために呼び出されます。
他のヒント
ダビデは正しいですが、私は0,0の場所で呼び出され、そのメソッドを取得し、時にはないことに気付きました。あなたのアプリは、アフリカの西海岸沖で使用されているかもしれないと思うしない限り、あなたは、どのような呼び出しを無視する必要があります。