![](/img/trans.png)
[英]becomeFirstResponder works in viewDidAppear but doesn't work in viewDidLoad
[英]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.