我第一次使用MVP模式使用Kotlin制作Android应用程序。我的问题是,既然Kotlin提供了高阶函数,为什么还需要 View 和 Presenter 的接口?我们不能只使用那些高阶函数进行通信吗?使用没有接口的模式是不是很糟糕?
我已经查看并阅读了很多文章和教程,但没有回答我的问题。我在下面的代码中所做的事情是错误的做法吗?有人可以向我解释一下吗?
在我的活动中
override fun init() {
btn_login.setOnClickListener {
LoginPresenter.userLogin(et_emailAddress.text.toString(),et_password.text.toString()){
if (it){
//do something
}else{
//do something
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
我的演讲者
object LoginPresenter {
fun userLogin(emailId: String, password: String, completion: (Boolean) -> Unit) {
//do something
completion(true)
}
}
Run Code Online (Sandbox Code Playgroud)