我试图让一个应用程序有两种不同的标签栏控制器,一个在状态的预登录,以及一个用于后登录状态。我目前的策略是创建所有的视图,将它们添加到两个数组(每个tabBarController一个),然后用一些逻辑切换作为子视图分配的tabBarController。单一视图添加到两个独立的tabBarController
我目前具有带是两个tabBarControllers之间的共同看法的问题。如果我只从一个数组中创建一个tabBarController,那么一切都很好。但是当我尝试在第一个数组中创建第二个具有相同视图的数组时,所有常见视图都不再出现在具有原始数组视图的tabBarController中。
首先我不知道这是否是连正确对待我的问题。其次,我不确定为什么一个数组中的指针在添加指向另一个数组的指针时似乎失去了引用。
这里是我的代码:
NSArray *loggedViewControllers = [NSArray arrayWithObjects:squareView, circleView, starView, diamondView, nil];
loggedTabBarController.viewControllers = loggedViewControllers;
NSArray *notLoggedViewControllers = [NSArray arrayWithObjects:squareView, circleView, diamondView, nil];
notLoggedTabBarController.viewControllers = notLoggedViewControllers;
[release squareView];
[release circleView];
[release diamondView];
[release starView];
[self.window addSubview:[loggedTabBarController view]];
[self.window makeKeyAndVisible];
从我办这个代码,我会用空白,升景,空白空白标签栏。
如果我运行以下命令:
[self.window addSubview:[notLoggedTabBarController view]];
一切都显示正常。
感谢您的帮助。