开源项目 reactive-mvvm-android 使用教程
reactive-mvvm-androidMy way to MVVM using KotlinX Coroutines and Android data-binding项目地址:https://gitcode.com/gh_mirrors/re/reactive-mvvm-android
1. 项目的目录结构及介绍
reactive-mvvm-android/
├── app/
│ ├── build.gradle
│ ├── src/
│ │ ├── main/
│ │ │ ├── java/
│ │ │ │ └── com/
│ │ │ │ └── ffgiraldez/
│ │ │ │ └── reactivemvvm/
│ │ │ │ ├── MainActivity.kt
│ │ │ │ ├── MainViewModel.kt
│ │ │ │ └── ...
│ │ │ ├── res/
│ │ │ │ ├── layout/
│ │ │ │ │ ├── activity_main.xml
│ │ │ │ │ └── ...
│ │ │ │ ├── values/
│ │ │ │ │ ├── strings.xml
│ │ │ │ │ └── ...
│ │ │ │ └── ...
│ │ │ └── AndroidManifest.xml
│ │ └── ...
│ └── ...
├── gradle/
│ └── wrapper/
│ ├── gradle-wrapper.jar
│ └── gradle-wrapper.properties
├── build.gradle
├── gradle.properties
├── gradlew
├── gradlew.bat
├── README.md
└── settings.gradle
目录结构介绍
app/: 包含应用程序的主要代码和资源文件。
build.gradle: 应用程序的构建脚本。src/: 源代码目录。
main/: 主源代码目录。
java/: Java 或 Kotlin 代码目录。
com/ffgiraldez/reactivemvvm/: 项目的主要代码包。
MainActivity.kt: 主活动文件。MainViewModel.kt: 主视图模型文件。… res/: 资源文件目录。
layout/: 布局文件目录。
activity_main.xml: 主活动布局文件。… values/: 值资源文件目录。
strings.xml: 字符串资源文件。… … AndroidManifest.xml: 应用程序清单文件。 … … gradle/: Gradle 包装器目录。
wrapper/: Gradle 包装器文件。
gradle-wrapper.jar: Gradle 包装器 JAR 文件。gradle-wrapper.properties: Gradle 包装器属性文件。 build.gradle: 根项目的构建脚本。gradle.properties: Gradle 属性文件。gradlew: Gradle 包装器脚本(Unix)。gradlew.bat: Gradle 包装器脚本(Windows)。README.md: 项目说明文件。settings.gradle: 项目设置文件。
2. 项目的启动文件介绍
MainActivity.kt
package com.ffgiraldez.reactivemvvm
import android.os.Bundle
import androidx.activity.viewModels
import androidx.appcompat.app.AppCompatActivity
import com.ffgiraldez.reactivemvvm.databinding.ActivityMainBinding
class MainActivity : AppCompatActivity() {
private lateinit var binding: ActivityMainBinding
private val viewModel: MainViewModel by viewModels()
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
binding = ActivityMainBinding.inflate(layoutInflater)
setContentView(binding.root)
// 设置视图模型
binding.viewModel = viewModel
binding.lifecycleOwner = this
}
}
介绍
MainActivity.kt 是应用程序的主活动文件,负责初始化视图绑定和视图模型。使用 ActivityMainBinding 进行视图绑定。通过 viewModels() 委托创建 MainViewModel 实例。在 onCreate 方法中设置视图模型和生命周期所有者。
3. 项目的
reactive-mvvm-androidMy way to MVVM using KotlinX Coroutines and Android data-binding项目地址:https://gitcode.com/gh_mirrors/re/reactive-mvvm-android
1