iOS - 多个UITableViews?

时间:2016-03-13 18:16:15

标签: ios uitableview

我怀疑哪个是展示多个UITableViews的最佳方式。

我的第一种方法是继承UITableViewController并模拟3个UITableViews,每个3个部分和3个标题,并使用委托协议的indexPath.section属性控制数据。

我的第二种方法是子类化UIViewController并添加3个UITableViews并使用委托协议的tableView属性控制数据。

我已经制作了两个并且它们看起来非常相似,但事实证明,UITableViewController子类更难以提供间距和类似UI的东西。但总的来说,人们可以达到同样的目的。

所以,是一个或另一个"最好"实现这种情况的方法,或者你发现了一个或另一个有什么区别?

3 个答案:

答案 0 :(得分:0)

您好像在这里回答了自己的问题。 UITableViewController旨在与其内置的tableView进行互动,而UIViewController可能更自然地允许您添加任意数量的内容。在将来,尝试提出一个更具体的问题,因为这个问题非常基于意见。

答案 1 :(得分:0)

您可以使用这两种方法,但是对于多个表格视图,您将失去一个重要的UITableView功能 - 单元格重用。

如果您没有滚动(表视图很小或静态),那么没有问题。但是,如果要将所有3个表放在一个scrollview中并且有很多项,则表视图始终以完整高度呈现,并且所有单元格将一起呈现。

这会对渲染性能产生负面影响,尤其是当您的某个表从数据库动态加载数据时(例如核心数据)。

对于静态或小型表,没有真正的区别。

另请注意UITableViewController还有其他有用的属性 - 例如拉到刷新视图。

答案 2 :(得分:0)

最好的方法是使用tableview标签。并按标签检查条件。用于数据源和委托。在我目前的项目中,我在一个控制器中最少有3个tableview和3个集合视图。