手动将UITabBar添加到UITableViewController

时间:2011-05-08 21:29:46

标签: iphone objective-c uitableview uitabbar

我有一个带有导航控制器的标准应用程序,可管理多个UITableViewController类。

我想在根视图(UITableViewController)中添加一个UITabBar来管理过滤UITableView中showin的选择。

我不想/需要一个UITabBarController。 UITabBar仅用于功能和UI(单选按钮样式选择和熟悉的tabbar UI)。我只想手动创建一个UITabBar并将其添加到我的视图锚定/锁定到屏幕的最底部,就像使用UITabBarControllers时的情况一样。

我的主要问题是我无法弄清楚我应该将UITabBar添加为子视图。

我不想将它添加到控制器self.tableView中,因为它会在滚动TableView的底部找到,而不是总是在屏幕底部可见。

我也尝试添加到view.tableView.superview,但这似乎也没有用。

任何帮助,或者我是否完全按照“以错误的方式过滤tableview数据”而应该使用别的东西?

1 个答案:

答案 0 :(得分:7)

因此,UITableViewController的问题是它并不像您预期​​的那样有效。将“锁定”元素添加到UITableView非常困难 - 表格页脚和页眉不能完成任务,而且您发现将其添加到超级视图不起作用。

在这种情况下,最佳解决方案实际上是将表视图控制器抛出窗口,并使用带有普通视图控制器的表视图。

您要做的是创建一个普通的UIViewController,然后为其添加一个表格视图。您的表视图委托和数据源也可以在此视图控制器中。

然后,您可以将表格视图的大小调整为小于屏幕大小,并将UITabBar添加到视图控制器的主视图中。