将TAB BAR添加到uitableviewcontroller

时间:2014-01-17 15:57:10

标签: ios storyboard uitableview uitabbar

我有一个用故事板设计的应用程序。我正在尝试在视图底部添加一个标签栏,我有我的uitableviewcontroller,问题是它会在第一个单元格下自动拖动它。

我打算在标签栏上添加4个按钮,每个按钮在此视图中执行特定操作(每个按钮将使用Web上的不同数据重新加载表格)。

4 个答案:

答案 0 :(得分:2)

选择您的控制器,然后选择菜单Editor > Embed In > Tab Bar Controller

编辑:我完全没有读完你的问题。其他答案更正确。

答案 1 :(得分:2)

根据您的描述,UIToolBar将是您的最佳选择。您可以将它放在视图控制器的底部,并为更新数据的每个按钮创建IBActions。
如果您打算使用UITabBar,则需要重新考虑故事板布局。您将有一个UITabBarController作为初始视图,它将您的TableViewController子类作为根视图。您可以创建四个单独的TableViewController子类(每个子类用于不同的数据集),也可以使用单个子类从UITabBarController接收要加载的数据集的加载消息。
如果您决定使用工具栏,则无法将其添加到默认Interface Builder TableViewController的底部。按照以下步骤将工具栏添加到TableViewController子类的底部:

  1. 在故事板中插入UIViewController(这将替换您的UITableViewController
  2. 将新UIViewController的类设置为UITableViewController子类(Identity Inspector)
  3. 在新UIToolbar的底部插入UIViewController,并根据需要添加按钮,IBOutlets和IBActions。
  4. UITableView添加到占据屏幕空间其余部分的UIViewController
  5. 在连接检查器中,将UITableView的dataSource和委托连接到UITableViewController子类
  6. 根据需要添加和配置尽可能多的原型TableViewCell。
  7. 这应该是在TableViewController中获取工具栏所需的全部内容。它需要在Interface Builder中进行额外配置,但它是唯一的方法,无需编写额外的代码。

答案 2 :(得分:0)

  

我打算在标签栏上添加4个按钮,每个按钮执行一定的操作   操作INSIDE此视图(每个都将重新加载表   来自网络的不同数据)。

根据你的上一句话,我判断你既不需要标签栏也不需要tableviewcontroller。您只需要一个简单的视图控制器在顶部 Tableview ,在底部工具栏 。工具栏将有一个段控件,包含4个部分 - 这将作为四个按钮。在每个部分点击,您可以捕获值更改的事件,并根据所选索引在表中加载新数据。

这是一种简单的做事方式。不要使用标签栏让生活变得复杂:)

答案 3 :(得分:0)

好的,这就是我最终做的。 我在user2105505提到的方法中遇到错误(标记为正确),所以我决定创建一个UIVIEWCONTROLLER并将我的tableviewcontroller添加为该uiviwewcontroller的子节点(通过导入uitableviewcontroller类,创建类的isntance并实例化self.storyboard),然后将工具栏添加到uiviewcontroler。

然后只需将tableview添加为uiviewcontroller视图的子视图,但是你需要记住做两件事。

实例化您的工具栏,并修改tableview的大小以使其适合并且工具栏显示。(可能使用bringToFront作为替代?对我不起作用,必须手动指定大小)。