将 tableview 代表移动到不同的类
Posted
技术标签:
【中文标题】将 tableview 代表移动到不同的类【英文标题】:move tableview delegates to different class 【发布时间】:2014-10-28 10:27:56 【问题描述】:我有一个包含大量操作的视图控制器。大多数视图都是动态创建的。为了分离出代码,我创建了一个作为NSObject
的myClass
的类,我在其中创建了一个函数showMyTableView
。此函数将tableview
添加为subview
。但我必须在view controller
中写下所有tableview delegates
。如何移动需要委托到 myclass?
明天我可能需要添加包含按钮的子视图,我应该在单独的类中为其编写操作。
我怎样才能做到这一点?
【问题讨论】:
【参考方案1】:您的新类应该只处理数据,而不是 ui。
对于不同的表格单元视图,请考虑使用单独的表格视图单元子类并为它们提供数据模型。让他们自己配置
【讨论】:
【参考方案2】:(“表视图代表”是指您的表视图的delegate
和dataSource
?)
你当然可以把这些东西移到另一个班级。您只需在视图控制器中将表视图的delegate
/dataSource
设置为MyClass
的实例,如下所示:
self.tableView.delegate = instanceOfMyClass;
MyClass
可能不应该负责创建表视图并将其添加到视图控制器的视图中。您的视图控制器应自行负责。
【讨论】:
以上是关于将 tableview 代表移动到不同的类的主要内容,如果未能解决你的问题,请参考以下文章
如何使用tableview外的按钮将tableview移动到新的tableview