【发布时间】:2017-03-20 02:32:32
【问题描述】:
为了卸载我的视图控制器,我决定将我的视图控制器中的 TableViewDataSource 和 TableViewDelegate 分离到它们自己的类中。我对如何解决以下这些问题感到困惑:
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
tableView.deselectRow(at: indexPath, animated: true)
hideNavbar = true
let vc = TopicSelectionViewController()
self.navigationController?.present(vc, animated: true, completion: {
self.hideNavbar = false
})
}
- 如果我把这个放在 TableViewDelegate 自己的类中,什么是最好的 引用 navigaitonController 的做法?
- 引用正在使用的 tableView 的正确方法是什么 这个数据源/委托?
- 我可以在 dataSource 中设置网络层吗?
如果是这样,在从服务器检索数据后,如何通知正在显示表格视图的视图控制器更新其视图?
【问题讨论】:
-
如果您尝试遵循 MVVM 模式,将数据从 ViewController 中分离出来,您仍然必须将这些委托函数放在您的 ViewController 中,而不是其他类中,您只需在其他类
标签: ios swift model-view-controller