我有一个静态TableView,现在需要成为一个动态的TableView,因为需要在ViewController周围放置其他视图,在我的情况下使用容器无法做到这一点。
问题是:如何有效地将表格视图从静态转换为动态?
我知道必须将继承从UITableView更改为UIViewController并添加加上委托方法。
但是所有Table-Sections怎么样:我在静态表中有3个部分,有6种类型的单元格。我是否真的需要为所有这些单元类型子类化UITableViewCell并手动处理所有内容,还是有更聪明的方法来执行此操作?
答案 0 :(得分:0)
你真的不能只在两者之间进行转换。通过仅实现某些表委托方法(如cellForRowAtIndexPath:),您将丢失静态内容。话虽这么说,表格应该是整个时间的动态。这样,您可以定义逻辑以确定它是否应显示您最初静态添加的内容或新的动态内容。
此外,您不需要视图控制器来实现委托/数据源方法。如果您已经有UITableView
的子类,那很好。您可以将其设置为自己的委托/数据源,并在子类中实现这些方法。
要回答你的上一个问题,不是没有更好的方法可以做到这一点。我建议您创建一个基类UITableViewCell
的基类,它实现单元格将共享的所有内容,然后在此基类的子类中实现各个更改。在表格视图中使用多个单元格子类听起来比它更糟糕。