zoukankan      html  css  js  c++  java
  • android.DataBindingUtil

    import android.databinding.DataBindingUtil
    import android.os.Bundle
    import android.support.v7.app.AppCompatActivity
    import org.jetbrains.anko.act
    import org.niray.imdemo.databinding.ActivityMainBinding
    
    @Suppress("MISSING_DEPENDENCY_CLASS")
    class MainActivity : AppCompatActivity() {
    
        val mBean by lazy {
            DataBean().apply {
                userName.set("苏州独墅湖")
                userAge.set(System.currentTimeMillis().toInt())
            }
        }
        val binder by lazy { DataBindingUtil.setContentView<ActivityMainBinding>(act, R.layout.activity_main) }
    
        override fun onCreate(savedInstanceState: Bundle?) {
            super.onCreate(savedInstanceState)
            binder.userBean = mBean
            postD()
        }
    
        fun postD() {
            window.decorView.postDelayed(object : Runnable {
                override fun run() {
                    mBean.userName.set("I'm From Delayed")
                    mBean.userAge.set(System.currentTimeMillis().toInt())
                    binder.userBean = mBean
                    postD()
                }
            }, 1234)
        } 
    }
    <?xml version="1.0" encoding="utf-8"?>
    <layout>
    
        <data>
    
            <variable
                name="userBean"
                type="org.niray.imdemo.DataBean" />
        </data>
    
        <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
            xmlns:tools="http://schemas.android.com/tools"
            android:id="@+id/activity_main"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:orientation="vertical"
            android:paddingBottom="@dimen/activity_vertical_margin"
            android:paddingLeft="@dimen/activity_horizontal_margin"
            android:paddingRight="@dimen/activity_horizontal_margin"
            android:paddingTop="@dimen/activity_vertical_margin"
            tools:context="org.niray.imdemo.MainActivity">
    
            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="@{String.valueOf(userBean.userAge)}" />
    
            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="@{userBean.userName}" />
    
        </LinearLayout>
    </layout>
    http://www.jianshu.com/p/14281500bd74
    http://kovenant.komponents.nl/android/features/
    dependencies {
        // ...
        kapt 'com.android.databinding:compiler:2.2.0'//改为对应版本
    }
    kapt {
        generateStubs = true
    }
       val binding = DataBindingUtil.setContentView<ActivityDataBindingBinding>(act, R.layout.activity_data_binding)
        @Suppress("MISSING_DEPENDENCY_CLASS")
         binding.userbean = UserBean("Grubby", "38")
  • 相关阅读:
    asp.net中页面传值的几种经典方法
    关于ASp.NEt方面的好书,不得不看啊!!!
    Qt Creator 窗体控件自适应窗口大小布局
    自己动手打造T9510E EMUIB502新功能
    OpenCV&Qt学习之四——OpenCV 实现人脸检测与相关知识整理
    Qt 中获取本机IP地址
    嵌入式Linux中GPS信息读取与处理
    OpenCV 学习资源整理
    新Outlook邮箱的客户端设置
    Qt 中显示中文
  • 原文地址:https://www.cnblogs.com/niray/p/5949813.html
Copyright © 2011-2022 走看看