开源项目教程:Android Data Binding with RxJava
android-data-binding-rxjavaDemo that shows how to use RxJava with Android Data Binding ObservableFields项目地址:https://gitcode.com/gh_mirrors/an/android-data-binding-rxjava
1. 项目的目录结构及介绍
android-data-binding-rxjava/
├── app/
│ ├── build.gradle
│ ├── proguard-rules.pro
│ └── src/
│ ├── androidTest/
│ ├── main/
│ │ ├── java/
│ │ │ └── com/
│ │ │ └── tango/
│ │ │ └── databindingrxjava/
│ │ │ ├── MainActivity.java
│ │ │ ├── MainViewModel.java
│ │ │ └── RxDataBinding.java
│ │ ├── res/
│ │ │ ├── layout/
│ │ │ │ └── activity_main.xml
│ │ │ └── values/
│ │ │ ├── strings.xml
│ │ │ └── styles.xml
│ │ └── AndroidManifest.xml
│ └── test/
├── build.gradle
├── gradle.properties
├── gradlew
├── gradlew.bat
├── settings.gradle
└── README.md
目录结构介绍
- app/: 主应用程序模块。
- build.gradle: 应用程序的构建脚本。
- proguard-rules.pro: ProGuard 规则文件。
- src/: 源代码目录。
- androidTest/: 用于 Android 测试的代码。
- main/: 主源代码目录。
- java/: Java 源代码。
- com/tango/databindingrxjava/: 项目的主要 Java 代码。
- MainActivity.java: 主活动类。
- MainViewModel.java: 主视图模型类。
- RxDataBinding.java: RxJava 数据绑定辅助类。
- res/: 资源文件。
- layout/: 布局文件。
- activity_main.xml: 主活动布局文件。
- values/: 值资源文件。
- strings.xml: 字符串资源文件。
- styles.xml: 样式资源文件。
- AndroidManifest.xml: 应用程序清单文件。
- test/: 用于单元测试的代码。
- build.gradle: 项目级构建脚本。
- gradle.properties: Gradle 属性文件。
- gradlew: Gradle 包装器脚本(Unix)。
- gradlew.bat: Gradle 包装器脚本(Windows)。
- settings.gradle: Gradle 设置文件。
- README.md: 项目自述文件。
2. 项目的启动文件介绍
MainActivity.java
package com.tango.databindingrxjava;
import android.os.Bundle;
import androidx.appcompat.app.AppCompatActivity;
import androidx.databinding.DataBindingUtil;
import com.tango.databindingrxjava.databinding.ActivityMainBinding;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
ActivityMainBinding binding = DataBindingUtil.setContentView(this, R.layout.activity_main);
MainViewModel vm = new MainViewModel();
binding.setVariable(BR.vm, vm);
binding.executePendingBindings();
vm.bind();
}
}
介绍
- MainActivity.java: 这是应用程序的主活动类。它继承自
AppCompatActivity
并重写了 onCreate
方法。 - DataBindingUtil.setContentView: 使用数据绑定库设置活动的内容视图。
- MainViewModel: 实例化并绑定到视图模型。
- binding.setVariable: 设置视图模型变量。
- binding.executePendingBindings: 立即执行任何挂起的绑定。
- vm.bind: 调用视图模型的绑定方法。
3. 项目的配置文件介绍
build.gradle (项目级)
// 项目级 build.gradle 文件
buildscript {
ext.kotlin_version = '1.4.32'
repositories {
google()
mavenCentral()
}
android-data-binding-rxjavaDemo that shows how to use RxJava with Android Data Binding ObservableFields项目地址:https://gitcode.com/gh_mirrors/an/android-data-binding-rxjava