swift3.0 面向协议开发 MVP 来看看吧
发布时间:2020-12-14 06:35:15 所属栏目:百科 来源:网络整理
导读:贡献者:赵大财 博客:https://my.oschina.net/zhaodacaiGitHub:https://github.com/dacaizhao 邮箱: dacai_zhao@163.com QQ:327532817 ============================= 下载地址:https://github.com/dacaizhao/swiftMVP 喜欢就给我star吧 先看:ViewController
贡献者:赵大财 class ViewController: UIViewController { fileprivate lazy var presenter : ViewPresenster = { return ViewPresenster(presenter: self) }() override func viewDidLoad() { super.viewDidLoad() } override func touchesBegan(_ touches: Set<UITouch>,with event: UIEvent?) { presenter.getData() } } // MARK:- 获取数据// extension ViewController:ViewPresensterProtocol{ func showPost(_ resulet: [DCModel]) { print(resulet) } } 在看 Model class DCModel: NSObject { // 用户ID var user_id : String = "" // 用户名字 var user_name : String = "" init(dict : [String : Any]) { super.init() setValuesForKeys(dict) } override func setValue(_ value: Any?,forUndefinedKey key: String) {} }
protocol ViewPresensterProtocol { func showPost(_ resulet: [DCModel]) } class ViewPresenster: NSObject { var presenter: ViewPresensterProtocol! lazy var model:[DCModel] = [DCModel]() init(presenter:ViewPresensterProtocol) { self.presenter = presenter; } func getData(){ let dict = [ ["user_id":"1","user_name":"zhaodacai1"],["user_id":"2","user_name":"zhaodacai2"],["user_id":"3","user_name":"zhaodacai3"],["user_id":"4","user_name":"zhaodacai4"],["user_id":"5","user_name":"zhaodacai5"],["user_id":"6","user_name":"zhaodacai6"],["user_id":"7","user_name":"zhaodacai7"] ] for item in dict { model.append(DCModel(dict: item)) } self.presenter.showPost(model) } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |