《第一行代碼》閱讀筆記(十七)——ViewBinding


我們在Android開發的過程中總是需要獲取XML布局中的ViewId,以便給其賦值進行顯示,早期我們只能使用 findViewById這個API,會導致很多的模版代碼出現。2013年左右Android界大神 Jake Wharton開源了Butter Knife框架,通過Bind("viewid")方式方便開發者獲取ViewId。近兩年由於谷歌對Kotlin的支持,我們開始使用 Android Kotlin extensions。 在文件中導入布局文件直接引用viewId。無需做其他額外操作,最為方便。

目前,谷歌在 Android Studio 3.6 Canary 11 及更高版本中加入了新的視圖綁定方式ViewBinding。
注意:要使用ViewBinding功能,AndroidStudio至少要升級到3.6。

導入依賴

在要使用ViewBinding的 module 的build.gradle文件中開啟ViewBinding

android {
   ...
    viewBinding {
        enabled = true
    }
   ...
}

Android Studio 4.0 后,使用這個依賴會報以下錯誤
DSL element 'android.dataBinding.enabled' is obsolete and has been replaced with 'android.buildFeatures.dataBinding'

所以修改成如下配置

buildFeatures{
        viewBinding = true
    }
    dataBinding{
        enabled  true
    }

使用教程

這是一篇非常好的文章,轉載給大家。
基於ViewBinding的BaseActivity封裝嘗試

當我們知道如何在Activity中使用viewbinding后,那Fragment和Adapter中呢?
Android 視圖綁定(ViewBinding)在Activity、Fragment和Adapter中的用法(java)

如果在使用的過程中$\color{#FF0000}{不想}$為某個布局文件生成binding類,則可以使用如下屬性添加到布局的根視圖中

<LinearLayout
        ...
        tools:viewBindingIgnore="true" >
    ...
</LinearLayout>


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM