簡體   English   中英

Mapbox selectAnnotation在ViewDidLoad中不起作用,或在ViewDidAppear中首次使用

[英]Mapbox selectAnnotation doesn't work in ViewDidLoad or first time in ViewDidAppear

我有一個主從應用程序,而我的詳細信息頁面是一張地圖。 當我單擊“母版”列表中的元素時,將顯示帶有一堆標記的地圖,將地圖縮放/平移到特定位置,並彈出說明該位置的注釋。

實現非常簡單,所以我認為。 在我的viewDidAppear中,我瀏覽了[mapView selectAnnotation: myAnnotation animated: FALSE]中的注釋列表,然后調用[mapView selectAnnotation: myAnnotation animated: FALSE] ,它可以正常工作。 但是不是第一次!

我將地圖填充到ViewDidLoad中,並且第一次調用ViewDidAppear時,mapView.annotations數組仍然為空。 即使我第一次進入詳細信息視圖時,是否有一種簡單的方法可以使其正常工作? 還是我必須在AppDelegate中創建並填充地圖?

嘗試使用MGLMapViewDelegate,尤其是

func mapViewDidFinishLoadingMap(mapView: MGLMapView) {

// your code here

}

也許您可以在DetailViewController上定義一個方法,然后在觸發諸如tableview的didselect或prepareForSegue之類的方法時,您必須獲取DetailViewController的實例,最后,可以使用此實例調用用戶定義的方法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM