Kotlin Android 擴充功能已淘汰,因此不再支援使用 Kotlin 合成進行檢視繫結。如果應用程式使用 Kotlin 合成項目處理檢視區塊繫結,請按照本指南的說明,改用 Jetpack 檢視區塊繫結。
如果您的應用程式尚未使用 Kotlin 合成進行檢視區塊繫結,請參閱「檢視區塊繫結」瞭解基本使用資訊。
更新 Gradle 檔案
與 Android 擴充功能一樣,Jetpack 檢視區塊繫結也會根據模組逐一啟用。針對每個使用檢視繫結的模組,請在模組層級 build.gradle
檔案中將 viewBinding
建構選項設為 true
:
Groovy
android { ... buildFeatures { viewBinding true } }
Kotlin
android { ... buildFeatures { viewBinding = true } }
如果應用程式未使用 Parcelable
功能,請移除啟用 Kotlin Android 擴充功能的那一行:
Groovy
plugins { id 'kotlin-android-extensions' }
Kotlin
plugins { kotlin("android.extensions") }
如要進一步瞭解如何在模組中啟用檢視區塊繫結,請參閱「設定操作說明」。
更新活動和片段類別
使用 Jetpack 檢視區塊繫結時,系統會為模組包含的每個 XML 版面配置檔案產生繫結類別。此繫結類別的名稱是 Pascal 案件中的 XML 檔案名稱,並在結尾加上「Binding」字詞。舉例來說,如果版面配置檔案名稱為 result_profile.xml
,產生的繫結類別名稱為 ResultProfileBinding
。
如要使用產生的繫結類別 (而非合成屬性) 參照檢視畫面,請按照下列步驟變更活動和片段類別:
從
kotlinx.android.synthetic
移除所有匯入項目。針對要使用的活動或片段,加載產生的繫結類別的執行個體。
- 如果是活動,請按照「在活動中使用檢視繫結」中的操作說明,在活動的
onCreate()
方法中加載例項。 - 針對片段,請按照「在片段中使用檢視區塊繫結」中的操作說明,在片段的
onCreateView()
方法中加載執行個體。
- 如果是活動,請按照「在活動中使用檢視繫結」中的操作說明,在活動的
變更所有檢視畫面參照,以便使用繫結類別執行個體,而非綜合屬性:
// Reference to "name" TextView using synthetic properties.
name.text = viewModel.nameString
// Reference to "name" TextView using the binding class instance.
binding.name.text = viewModel.nameString
詳情請參閱檢視區塊繫結指南中的「Usage」一節。
為您推薦
- 注意:系統會在 JavaScript 關閉時顯示連結文字
- 檢視區塊繫結
- Paging 程式庫總覽
- 測試分頁實作