我怀疑哪个是展示多个UITableViews的最佳方式。
我的第一种方法是继承UITableViewController并模拟3个UITableViews,每个3个部分和3个标题,并使用委托协议的indexPath.section属性控制数据。
我的第二种方法是子类化UIViewController并添加3个UITableViews并使用委托协议的tableView属性控制数据。
我已经制作了两个并且它们看起来非常相似,但事实证明,UITableViewController子类更难以提供间距和类似UI的东西。但总的来说,人们可以达到同样的目的。
所以,是一个或另一个"最好"实现这种情况的方法,或者你发现了一个或另一个有什么区别?
答案 0 :(得分:0)
您好像在这里回答了自己的问题。 UITableViewController
旨在与其内置的tableView
进行互动,而UIViewController
可能更自然地允许您添加任意数量的内容。在将来,尝试提出一个更具体的问题,因为这个问题非常基于意见。
答案 1 :(得分:0)
您可以使用这两种方法,但是对于多个表格视图,您将失去一个重要的UITableView
功能 - 单元格重用。
如果您没有滚动(表视图很小或静态),那么没有问题。但是,如果要将所有3个表放在一个scrollview中并且有很多项,则表视图始终以完整高度呈现,并且所有单元格将一起呈现。
这会对渲染性能产生负面影响,尤其是当您的某个表从数据库动态加载数据时(例如核心数据)。
对于静态或小型表,没有真正的区别。
另请注意UITableViewController
还有其他有用的属性 - 例如拉到刷新视图。
答案 2 :(得分:0)
最好的方法是使用tableview标签。并按标签检查条件。用于数据源和委托。在我目前的项目中,我在一个控制器中最少有3个tableview和3个集合视图。