亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

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

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

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

九龙坡区| 洞头县| 钦州市| 安新县| 三原县| 黄大仙区| 康定县| 乌兰县| 城固县| 玛多县| 商水县| 江山市| 尼木县| 额尔古纳市| 体育| 鄄城县| 中西区| 巴林右旗| 丽江市| 深水埗区| 齐齐哈尔市| 道真| 两当县| 民和| 绥宁县| 炉霍县| 美姑县| 宜阳县| 东台市| 福鼎市| 呼和浩特市| 新巴尔虎右旗| 高邮市| 广平县| 房山区| 乐至县| 武穴市| 武乡县| 六盘水市| 永康市| 灵宝市|