我有一个标签栏应用程序,在第一个标签上我有一个MKMapView
. 我想要做的是从应用程序的其他地方,将活动选项卡切换到地图视图并根据前一个视图中的数据设置地图视图的区域(带有切换到地图视图的按钮的那个)。
我试过的是:
[self.tabBarController setSelectedView:0];
UIMapViewController *mapView = [self.tabBarController.viewControllers objectAtIndex:0];
[mapView displayBookmarkAnnotation:bookmark];
这只会导致应用程序崩溃无法找到我创建的方法。我认为我没有选择实现这一点的最佳途径,但我真的不确定我应该如何去做。
[更新] 施放返回的控制器tabBarController
无效。
[已解决] 我试图将 a 投射UINavigationController
到我的 mapView
[self.tabBarController setSelectedView:0];
UINavigationController *navController = [self.tabBarController.viewControllers objectAtIndex:0];
//if the tab has other views open, return to mapView
[navController popToRootViewControllerAnimated:YES];
UIMapViewController *mapView = (UIMapViewController *)[navController visibleViewController];
[mapView customMessage:object];