本文首发于公众号“AntDream”,欢迎微信搜索“AntDream”或扫描文章底部二维码关注,和我一起每天进步一点点
使用 Kotlin 实现 MVVM(Model-View-ViewModel)模式是开发 Android 应用程序的一种常见架构方式。MVVM 模式将应用程序的 UI 逻辑和业务逻辑分离,使用 LiveData、ViewModel 和 DataBinding 可以使代码更加模块化和可维护。以下是实现 MVVM 模式的步骤和示例:
步骤
- Model 层:负责数据的获取和处理,如数据库操作、网络请求等。
- View 层:负责 UI 的显示,例如 Activity、Fragment。
- ViewModel 层:作为数据和 UI 的桥梁,负责预处理数据,使之适合 UI 显示。使用
LiveData
来观察数据变化。
依赖项
在开始之前,需要在项目的 build.gradle
文件中添加相关依赖项:
dependencies {
implementation "androidx.lifecycle:lifecycle-extensions:2.2.0"
implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.2.0"
implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.3.1"
implementation "androidx.databind:databinding-runtime:3.4.1"
}
代码示例
1. Model 类
// User.kt
data class User(val name: String, val age: Int)
2. ViewModel 类
// UserViewModel.kt
import androidx.lifecycle.LiveData
import androidx.lifecycle.MutableLiveData
import androidx.lifecycle.ViewModel
class UserViewModel : ViewModel() {
private val _user = MutableLiveData<User>()
val user: LiveData<User>