我正试图在标签栏中的视图之间传递一些数据.我的第一个视图能够从我的模型类加载数据并对其进行操作.但是当我点击标签栏控制器中的第二个或第三个标签时,数据不会通过.这是我试图通过它的方式.
-(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传递给不同的视图,以便进行不同的操作.
解决方法
不要在此方法中创建视图控制器.
UITabBarController在初始化时自动创建所有视图控制器.试试这个:
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; } }