我正在尝试使用Model-View-Presenter实现UITableViewController
。由于我是这个概念的新手,所以我对如何将UITableView's
数据源协议与UIViewController
分开感到非常困惑。
[许多文章都同意View + Viewcontroller必须笨而只考虑UI及其布局的想法。另一方面,Presenter需要成为视图和模型之间的促进者,并且还必须实现逻辑,但是他们声明不包括UIKit,因为它不直接操纵UI。这就是我的困惑所在。
[当实现UITableView时,我们必须实现两个协议:UITableViewDelegate
和UITableViewDataSource
,尤其是数据源。
我假设委托属于View部分,并在收到用户操作时将事件传递给Presenter。
但是,要实现UITableViewDataSource
,我们必须具有表视图使用的某些模型。话虽这么说,我只能想到两种方法以某种方式适合MVP。
将Presenter的Model值传递给UITableView
,并且为了数据源(例如为特定索引创建一行),使其在视图中是只读的。但是后来我认为它违反了MVP概念,因为Model值是View可以直接访问的。
让主持人成为数据源。但是由于Presenter不应导入UIKit,因此我认为导入UIKit并实现UITableViewDatasource也违反了MVP概念。
长话短说,我很困惑在哪里以及如何适当地实现UITableDatasource ...如果任何人都非常了解这个概念,请分享您的知识。预先谢谢!
我正在尝试使用Model-View-Presenter实现UITableViewController。由于我不熟悉此概念,因此如何将UITableView的数据源协议与...
第一个选项是将adapter