如何使用导航栏和TabBar创建UIView

时间:2013-06-01 14:39:09

标签: ios objective-c

我想在我的应用程序中介绍一个包含导航栏和底部标签栏的视图。视图包含具有多个条目的表视图,一旦用户点击单元格,推送segue将他带到另一个视图,其中包含有关他之前点击的单元格的详细信息。如果他决定,用户可以通过点击顶部导航栏的“后退”按钮返回父视图。除此之外,我希望我的视图底部有一个标签栏,为用户提供额外的工具。因此,如果他决定检查应用程序的“创建者”,他只需点击底部的“创建者”TabBarItem即可。

我想问你,实现上述目标的最佳途径是什么。我已经尝试过将UITabBarController与UINavigationController结合使用。没有实现我想要的东西,因为我希望桌面上的视图独立于TabBarController而 NOT 是它的一部分(部分我的意思是通过标签访问)。

您是否认为使用UITabBarView的UINavigationController视图是更好的选择?

更新

我的意思是“独立于TabBarController,而不是它的一部分”:

加载应用后,我希望我的主视图(带表格)顶部包含导航栏,底部有Tab栏。但是,我不希望看到选中标签栏的第一个选项卡,因为我的主视图无法通过选项卡栏的选项卡访问,而是通过导航栏访问。例如,如果我在主视图中并点按第一次点击,我想转到另一个包含其他信息的视图。

2 个答案:

答案 0 :(得分:0)

选项1 : -

创建一个标签栏Controller并在该TabbarController上分配导航视图。 用nav1表示nav1,用tab2表示nav2 ...

选项2 : -

创建导航视图控制器,然后使用addSubView在该navigationView控制器上添加tabbarcontroller。

因此,当用户点击表格中的一行时,您将转到另一个没有TabbarController的视图,当用户返回时,他将再次看到TabbarController。

答案 1 :(得分:0)

这就是我要做的:

首先,我将继承UITabbarController并创建例如ParentTabBarController。该控制器将包含所有必需的选项卡以及如果单击它们将执行的操作。

接下来,对于我创建的每个viewcontroller,我将从这个ParentTabBarController子类化,以便选项卡已经存在。您可以添加其他功能或根据您的情况覆盖它。

在导航控制器的appdelegate传递中,每次推送和关闭您在第二步中创建的视图控制器。

希望这会有所帮助..