2011-09-29 50 views
0

所以我不确定什么是做某事的最佳方式或首选方式。这里的本质是什么,我们正在尝试做的:查看层次结构UITabBarController,在某些选项卡中添加更多视图

-UITabBarController为根
- 第一标签是FruitViewController
-FruitViewController可以推动一个AppleViewController(不知道推是正确的单词,但基本上去下的viewController)
-AppleViewController具有在UIToolBar一个后退按钮返回到FruitViewController

- 第二标签是VegetableViewController

-VegetableFruitViewController可以推CeleryViewController

在两个ViewControllers结束时,您可以推送另一个名为CalorieViewController的ViewController。我的问题是,每个标签呈现视图控制器的最佳方式是什么?因为我希望两个选项卡都使用CalorieViewController,为了重用它,我假设我需要保持它与其他ViewControllers不耦合。

我的同事实现的方式是,在每个选项卡上,该选项卡的所有ViewController都被创建并添加为子视图。基于按下的按钮,它隐藏并显示另一个视图。这似乎不是一个好主意。它看起来像presentModalViewController,并dismissModalViewController(用于后退按钮)可能工作,但我不知道如果这是首选的方法。

+0

如果你说推你完全想要一个UINavigationController。 –

回答

1

我建议你为每个标签制作一个UINavigationController的根视图控制器,当前视图控制器的标签设置为导航控制器的根视图控制器。这样你就可以推送和弹出所有你想要的视图。 UIViewController甚至支持在将新视图控制器推入堆栈时自动将标签栏从屏幕上移开。

相关问题