MKMapView
アプリの最初の起動時 (デプロイ直後) でMKMapView
、最初のビューにある場合、オーバーレイが読み込まれないのはなぜですか?
その後、アプリの最初の起動であり、最初のビューではない場合でも、すべて正常に動作しMKMapView
ます。
次のデリゲートは呼び出されていません。
mapView: viewForOverlay:
mapView: viewForAnnotation:
UI には SDK 5.1 と Storyboard を使用しています。
MKMapView
アプリの最初の起動時 (デプロイ直後) でMKMapView
、最初のビューにある場合、オーバーレイが読み込まれないのはなぜですか?
その後、アプリの最初の起動であり、最初のビューではない場合でも、すべて正常に動作しMKMapView
ます。
次のデリゲートは呼び出されていません。
mapView: viewForOverlay:
mapView: viewForAnnotation:
UI には SDK 5.1 と Storyboard を使用しています。
オーバーレイ用のデータは、最初の開始直後には使用できないため、描画にも使用できません。
アプローチの更新:
viewDidLoad だけにオブジェクトを追加する代わりに、より動的なアプローチに切り替えました。
これを行う最も明白な方法はNSFetchedResultController
、から知られている を使用することUITableViewController
です。何かが変更された場合にビューコントローラーを呼び出す便利なデリゲートがあります。
したがって、これからはデリゲート メソッドのみを実装してから、オーバーレイを更新、削除、または削除しMKMapView
ます。