我試圖讓一個應用程序有兩種不同的標籤欄控制器,一個在狀態的預登錄,以及一個用於後登錄狀態。我目前的策略是創建所有的視圖,將它們添加到兩個數組(每個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]];
一切都顯示正常。
感謝您的幫助。