databinding 使用步驟

一、app build.gradle中添加代碼java

android {
    compileSdkVersion 25
    buildToolsVersion "25.0.2"
//添加這行就算引入了
    dataBinding {
        enabled = true } 
    defaultConfig {
        .......
    }
    buildTypes {
       .........
    }
}

二、在xml佈局文件中,添加根佈局  <layout>  ....</layout>android

三、activity的oncreate方法中    添加app

ActivityMeiZiBinding viewDataBinding = DataBindingUtil.setContentView(this, R.layout.activity_mei_zi);
用上面這一行取代原activity的setcontentview();
這個ActivityMeiZiBinding是框架生成的類,注意它的命名 是按 佈局文件來的,有下劃線的都把下劃線去掉 ,而後後面的首字母大寫
R.layout.activity_mei_zi =》ActivityMeiZiBinding

四、此時你會發如今as中使用 viewDataBinding.  就會提示出你佈局文件中的控件,也就是直接使用了。不過命名跟你的id名有點不一樣,規則跟3中類的命名規則相同框架

     通常規則是 若是id使用下劃線,則下劃線去掉,後面的 首字母大寫  好比 id爲  my_edittext  會變成   myEdittext佈局

     這時就至關於已經對 該控件findviewbyid了,接下來就能夠正常操做了。若是你只是爲了達到 取代findviewbyid的操做,到這個地方就算完成了gradle

      

五、固然databinding的功能遠不止這麼點ui

     ui綁定:   其實使用databinding咱們在佈局中連控件的id也不須要寫了,對,就是這麼屌。this

     在佈局文件中添加標籤  spa

name至關於變量名,type至關於類型。通常就是提供數據的javabean的全類名
<data>
        <variable
            name="personalinfobean"
            type="com.example.apple.xiaohecun.model.bean.PersonalInfoBean"/>

    </data>

而後把控件的id都刪掉。這時,你4中應用的binding.    就會報紅。低版本studio須要rebuild一下code

六、而後在你請求好數據的地方把 請求好的bean設置進去就OK了

PersonalInfoBean personalInfoBean=getPersonalInfo();
viewDataBinding.setPersonalinfobean(personalInfoBean);
相關文章
相關標籤/搜索