制作替代UITabBarController

问题描述:

我正在制作一个自定义的UIViewController,它与UITabBarController类似,因为有一些按钮可以在视图之间切换。但是我不能确定什么的最好方式切换视图:制作替代UITabBarController

  1. 已经在笔尖文件一个UIView,并添加/删除的viewController的意见子视图,在需要的时候。

  2. 在nib文件中有一个UIView(作为IBOutlet),并用viewController的视图替换UIView,以便它们是myTabBarController视图的子视图。

  3. 不要在笔尖一个UIView,和编程设置,因为它们增加了viewControllers的框架,所以他们是myTabBarController的看法子视图直接

+0

您需要哪些额外的功能,哪些标签栏默认不提供,最好使用内置控制器 – 2011-01-29 22:47:07

+0

我需要它在导航堆栈中,它看起来与标签栏非常不同。 – 2011-01-29 22:49:52

我必须做同样的事情一次,在我的情况下,我的主人 “切换”视图(缺乏更好的术语)保持列表UIViewControllers更简单。这样,即使相应视图不可见或甚至已被销毁(例如,为了节省内存),我仍能维持子视图控制器的状态,这使得更容易跟踪每个“页”。在我的方法中,我只是以编程方式将每个UIViewController添加到交换机视图。基本上你的方法#3。

这就是说,你的方法#1和#2没有任何问题。他们会完成这项工作。我对#1并不特别喜欢的唯一事情就是它的扩展并不容易,因为在编译时您已经静态设置了哪些视图是切换器的子视图,并且无法在运行时轻松更改。

我使用Red Artisan的Marcus Crafter的this approach。它工作得非常好。