Kotlin Android 拡張機能は非推奨となりました。つまり、Kotlin の使用は ビュー バインディング用の合成はサポートされなくなりました。アプリで Kotlin を使用している場合 については、このガイドを使用して、Jetpack ビュー バインディングに移行してください。
アプリのビュー バインディングに Kotlin 合成をまだ使用していない場合は、ビュー バインディングをご覧ください。
Gradle ファイルを更新する
Android 拡張機能と同様に、Jetpack ビュー バインディングはモジュールごとに有効化されます。
あります。ビュー バインディングを使用するモジュールごとに、viewBinding
ビルドを設定します。
次のように、モジュール レベルの build.gradle
ファイルで 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 レイアウト ファイルごとにバインディング クラスが生成される
渡されます。このバインディング クラスの名前は XML ファイル
ファイルの末尾に Binding という単語を追加したパスカルケースのファイルです。たとえば
レイアウト ファイルの名前は result_profile.xml
(生成された名前)です。
バインディング クラスが ResultProfileBinding
。
合成プロパティの代わりに生成されたバインディング クラスを使用して、 アクティビティとフラグメントのクラスを変更するには、 次のとおりです。
kotlinx.android.synthetic
からすべてのインポートを削除します。アクティビティ用に生成されたバインディング クラスのインスタンスをインフレートする。または 使用するフラグメントを指定します。
- アクティビティについては、Google Cloud でビュー バインディングを使用する
アクティビティを
アクティビティの
onCreate()
メソッドを使用します。 - フラグメントについては、Google Cloud でビュー バインディングを使用する
フラグメントを使用してインスタンスをインフレートする
フラグメントの
onCreateView()
メソッドを呼び出します。
- アクティビティについては、Google Cloud でビュー バインディングを使用する
アクティビティを
アクティビティの
代わりにバインディング クラスのインスタンスを使用するように、すべてのビュー参照を変更します。 合成特性:
// 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
詳しくは、使用方法をご覧ください。 ビューバインディングガイドをご覧ください
あなたへのおすすめ
- 注: JavaScript がオフになっている場合はリンクテキストが表示されます
- ビュー バインディング
- ページング ライブラリの概要
- Paging の実装をテストする