Die Kotlin-Android-Erweiterungen wurden eingestellt. Das bedeutet, dass die Verwendung von Kotlin-Synthetik für die Ansichtsbindung nicht mehr unterstützt wird. Wenn Ihre Anwendung Kotlin-Synthetiken für die Ansichtsbindung verwendet, verwenden Sie diese Anleitung für die Migration zur Jetpack-Ansichtsbindung.
Wenn in Ihrer App noch keine Kotlin-Syntax für die Ansichtsbindung verwendet wird, finden Sie unter Bindung ansehen grundlegende Informationen zur Nutzung.
Gradle-Datei aktualisieren
Wie bei Android-Erweiterungen wird auch die Jetpack-Ansichtsbindung nach Modul für Modul aktiviert. Legen Sie für jedes Modul, das Ansichtsbindung verwendet, die Build-Option viewBinding
in der Datei build.gradle
auf Modulebene auf true
fest:
Groovig
android { ... buildFeatures { viewBinding true } }
Kotlin
android { ... buildFeatures { viewBinding = true } }
Wenn in Ihrer App keine Parcelable
-Funktionen verwendet werden, entfernen Sie die Zeile, mit der die Kotlin-Android-Erweiterungen aktiviert werden:
Groovig
plugins { id 'kotlin-android-extensions' }
Kotlin
plugins { kotlin("android.extensions") }
Weitere Informationen zum Aktivieren der Ansichtsbindung in einem Modul finden Sie unter Einrichtungsanleitung.
Aktivitäts- und Fragmentklassen aktualisieren
Mit der Jetpack-Ansichtsbindung wird für jede im Modul enthaltene XML-Layoutdatei eine Bindungsklasse generiert. Der Name dieser Bindungsklasse ist der Name der XML-Datei in Pascal-Case-Schreibweise mit dem Wort Binding am Ende. Lautet der Name der Layoutdatei beispielsweise result_profile.xml
, lautet der Name der generierten Bindungsklasse ResultProfileBinding
.
Wenn Sie die generierten Bindungsklassen anstelle von synthetischen Attributen für Verweise auf Ansichten verwenden möchten, ändern Sie die Aktivitäts- und Fragmentklassen so:
Alle Importe aus
kotlinx.android.synthetic
entfernen.Binden Sie eine Instanz der generierten Bindungsklasse für die zu verwendende Aktivität oder das zu verwendende Fragment auf.
- Folgen Sie für Aktivitäten der Anleitung unter Ansichtsbindung in Aktivitäten verwenden, um eine Instanz in der Methode
onCreate()
der Aktivität zu erhöhen. - Folgen Sie bei Fragmenten der Anleitung unter Ansichtsbindung in Fragmenten verwenden, um eine Instanz in der Methode
onCreateView()
des Fragments zu erhöhen.
- Folgen Sie für Aktivitäten der Anleitung unter Ansichtsbindung in Aktivitäten verwenden, um eine Instanz in der Methode
Ändern Sie alle Ansichtsverweise so, dass die Bindungsklasseninstanz anstelle von synthetischen Attributen verwendet wird:
// 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
Weitere Informationen finden Sie im Abschnitt Nutzung im Leitfaden zur Ansichtsbindung.
Empfehlungen für dich
- Hinweis: Der Linktext wird angezeigt, wenn JavaScript deaktiviert ist.
- Bindung ansehen
- Paging-Bibliothek – Übersicht
- Auslagerungsimplementierung testen