我正在尝试在标签栏中的视图之间传递一些数据。我的第一个视图能够从我的模型类加载数据并对其进行操作。但是当我点击标签栏控制器中的第二个或第三个标签时,数据不会通过。这就是我试图传递它的方式。
-(void)tabBarController:(UITabBarController *)tabBarController didSelectViewController:(UIViewController *)viewController{
if (tabBarController.selectedIndex == 1){
HashTagTableViewController *hash [[HashTagTableViewController alloc]init];
hash.userArray = feed.userArray;
}else if (tabBarController.selectedIndex == 2){
PhotoTagTableViewController *photo = [[PhotoTagTableViewController alloc]init;
photo.userArray = feed.userArray;
}
}
feed是我在当前视图控制器中创建的模型类实例的名称。我试图避免创建模型类的多个实例,因为它必须多次调用API。我所要做的就是将feed.userArray
传递给不同的视图,以便进行不同的操作。
答案 0 :(得分:3)
不要在此方法中创建视图控制器。 UITabBarController在初始化时自动创建所有视图控制器。试试这个:
-(void)tabBarController:(UITabBarController *)tabBarController didSelectViewController:(UIViewController *)viewController{
if (tabBarController.selectedIndex == 1){
HashTagTableViewController *hash = (HashTagTableViewController *) viewController;
hash.userArray = feed.userArray;
}else if (tabBarController.selectedIndex == 2){
PhotoTagTableViewController *photo = (PhotoTagTableViewController *)viewController;
photo.userArray = feed.userArray;
}
}