美文网首页
DataBinding笔记1

DataBinding笔记1

作者: satisfying | 来源:发表于2020-08-05 22:11 被阅读0次

开启DataBinding

  android {
   .......
    defaultConfig {....... }
    dataBinding {
        enabled = true
    }
    buildTypes {
       ........
    }
}

需要使用DataBinding 得xml文件


image.png

简单使用

 <data>
        <variable
            name="name"
            type="java.lang.String" />
        <variable
            name="age"
            type="java.lang.Integer" />
        <variable
            name="phone"
            type="java.lang.String" />
    </data>

<TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="@{name}" />
            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="@{String.valueOf(age)}" />
            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="@{phone}" />

textview 文本拼接使用 拼接字符串需要添加到string.xml文件

<TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="@{@string/name+name}" />
            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="@{@string/age+String.valueOf(age)}" />
            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="@{@string/phone+phone}" />

导入对象

 <import type="com.example.databinding.House"/>
        <variable
            name="house"
            type="House" />

简单的三目运算

 <TextView
   android:text="@{@string/house_address(house.address==null? @string/house_unit : house.address)}" />

上面activity 中调用方式

        val bindingBinding  = DataBindingUtil.setContentView<ActivityInFoBinding>(this@InFoActivity, R.layout.activity_in_fo)
        bindingBinding.lifecycleOwner=this
        bindingBinding.name="张三"
        bindingBinding.age=22
        bindingBinding.phone="1234567890"
        bindingBinding.house= House(address = "北京市通州区",size = 333,number = "202")

相关文章

  • DataBinding笔记1

    开启DataBinding 需要使用DataBinding 得xml文件 简单使用 textview 文本拼接使用...

  • Data Binding基础用法

    1.DataBinding配置2.DataBinding的使用3.UI/事件绑定 1.DataBinding配置 ...

  • JetPack学习笔记之DataBinding(二)

    JetPack学习笔记之DataBinding(二) 上一篇文章中介绍了DataBinding的基本使用方法,通过...

  • DataBinding的用法

    DataBinding的用法 是时候抛弃ButterKnife,拥抱DataBinding了。1.ButterKn...

  • DataBinding笔记

    DataBinding主要解决了两个问题: 需要多次使用findViewById,损害了应用性能且令人厌烦 更新U...

  • DataBinding 笔记

    什么是DataBinding DataBinding,2015年IO大会介绍的一个框架,字面理解即为数据绑定,是G...

  • DataBinding 笔记

    参考:Data Binding LibraryData Binding指南 上面两篇博客写的非常详细了,这里我只是...

  • MVVM架构

    dataBinding 1.module中的build.gradle添加dataBinding{enabled t...

  • Android jetpack(ViewModel,LiveDa

    笔记,记录一下ViewModel,LiveData,DataBinding的使用小案例。 利用ViewMode点击...

  • DataBinding使用全面详解

    一、DataBinding使用 1.使用环境 DataBinding是一个support library,所以它可...

网友评论

      本文标题:DataBinding笔记1

      本文链接:https://www.haomeiwen.com/subject/mvcarktx.html