Google官网
配置:
需要在Moudle的build.gradle的android{}里添加

apply plugin: 'com.android.application'apply plugin: 'kotlin-android'apply plugin: 'kotlin-android-extensions'android {    compileSdkVersion 29    buildToolsVersion "29.0.2"    defaultConfig {        applicationId "com.example.login"        minSdkVersion 21        targetSdkVersion 29        versionCode 1        versionName "1.0"        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"    }    buildTypes {        release {            minifyEnabled false            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'        }    }    dataBinding {        enabled = true    }}

数据类

data class Data(val etext:String)

xml

<?xml version="1.0" encoding="utf-8"?><layout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:app="http://schemas.android.com/apk/res-auto"    xmlns:tools="http://schemas.android.com/tools">    <data>        <variable            name="data"            type="com.example.login.cart.Data" />    </data>    <LinearLayout        android:orientation="horizontal"        android:layout_width="match_parent"        android:layout_height="500dp">        <TextView            android:text="@{data.etext}"            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:textSize="30dp"/>    </LinearLayout></layout>

在Activity的类中声明我们的Binding类

package com.example.login.cartimport androidx.appcompat.app.AppCompatActivityimport android.os.Bundleimport androidx.databinding.DataBindingUtilimport com.example.login.Rimport com.example.login.databinding.ActivityCloseBindingclass CloseActivity : AppCompatActivity() {    lateinit var binding:ActivityCloseBinding    override fun onCreate(savedInstanceState: Bundle?) {        super.onCreate(savedInstanceState)        setContentView(R.layout.activity_close)        binding = DataBindingUtil.setContentView<ActivityCloseBinding>(this, R.layout.activity_close)        binding.data = Data("稍等三秒")        Thread(Runnable {            Thread.sleep(3000)            binding.data = Data("Hello!Kotlin")        }).start()    }}

效果图
DataBinding(双向绑定)_第1张图片

更多相关文章

  1. Android 视图绑定,找不到类 'ResultProfileBinding'
  2. Android之ListActivity:布局与数据绑定
  3. Android应用项目绑定appcom_v7打包时,出现错误:"XXX"isnottransla
  4. Android Service绑定的时候没有回调onBound函数
  5. 【Android】Activity与服务Service绑定
  6. [图解]Android源码分析——Service的启动和绑定过程
  7. Android:week 13总结 绑定服务、音乐播放器(服务)
  8. Android 中的数据绑定(1)

随机推荐

  1. android 获取屏幕的方向
  2. 【notification】Android(安卓)中创建状
  3. Android(安卓)studio Caused by: org.gra
  4. 关于android studio报错transformClasses
  5. Known Free Software Android(安卓)Appli
  6. Android通知Notification
  7. Android中Parcelable接口用法
  8. android 判断service是否开启
  9. AndroidManifest.xml配置文件选项详解
  10. Android(安卓)Activity实现切换动画的两