91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

ViewBinding怎么在Android中使用

發布時間:2021-05-18 15:50:49 來源:億速云 閱讀:193 作者:Leah 欄目:開發技術

ViewBinding怎么在Android中使用?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

ViewBinding 有什么作用

  • 過于冗余

findViewById 對應所有的View 都需要書寫以下 findViewById(R.id.xxx) 的方法

  • 不安全

所謂的不安全就是分為兩個  首先是空類型的不安全,findViewById  又可能返回為null,導致程序異常
第二: 強轉的不安全,findViewById。 將 對應的id 需要強轉成對應的View 例如

TextView tv = findViewById(R.id.textview);

一旦我的類型給錯了,就會出現異常,比如將textview 錯強轉成 ImageView

正文開始

最近這段時間在學習Kotlin,突然發現谷歌已經把kotlin-android-extensions插件廢棄,目前推薦使用ViewBinding來進行替代。

ViewBinding的目的:避免編寫findViewById

使用ViewBinding前的注意事項:
1、確保你的Android Studio是3.6或更高的版本
2、在build.gradle中加入以下配置:buildFeatures { viewBinding true }

使用ViewBinding的步驟:
1、首先要調用activity_main.xml布局文件對應的Binding類,也就是ActivityMainBinding的inflate()函數去加載該布局,inflate()函數接收一個LayoutInflater參數,在Activity中是可以直接獲取到的
2、接下來調用Binding類的getRoot()函數可以得到activity_main.xml中根元素的實例
3、把根元素的實例傳入到setContentView()函數當中,這樣Activity就可以成功顯示activity_main.xml這個布局的內容了。

話不多說,接下來是代碼部分:
1、在build.gradle中加入:buildFeatures { viewBinding true }

ViewBinding怎么在Android中使用
ViewBinding怎么在Android中使用

2、將要使用ViewBinding的Activity打開,將代碼改成如下的樣子:

ViewBinding怎么在Android中使用

這里要注意的是,如果在別的Activity中要使用binding的話(如:我現在的kt文件叫做LoginActivity.kt,那么代碼如下:

class MainActivity : AppCompatActivity() {

    private lateinit var binding: ActivityLoginBinding

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        binding = ActivityLoginBinding.inflate(layoutInflater)
        setContentView(binding.root)

        binding.webView
    }
}

3、此時就可以通過binding.控件id名進行調用

ViewBinding怎么在Android中使用

Android是什么

Android是一種基于Linux內核的自由及開放源代碼的操作系統,主要使用于移動設備,如智能手機和平板電腦,由美國Google公司和開放手機聯盟領導及開發。

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

台南市| 罗源县| 平原县| 平陆县| 西华县| 武鸣县| 邹城市| 永丰县| 嫩江县| 东辽县| 英超| 郴州市| 吉林市| 镇原县| 肇东市| 康马县| 凉城县| 宾阳县| 德保县| 固安县| 汪清县| 攀枝花市| 四子王旗| 新泰市| 田东县| 安福县| 仙桃市| 东源县| 嘉鱼县| 常熟市| 黑山县| 朝阳县| 定西市| 慈利县| 溧水县| 桃园市| 获嘉县| 河北区| 赤水市| 太原市| 濮阳市|