Appcompat

Ermöglicht den Zugriff auf neue APIs auf älteren API-Versionen der Plattform (viele mit Material Design).
Letzte Aktualisierung Stabile Version Releasekandidat Beta-Ausgabe Alphaversion
29. Mai 2024 1.7.0 - -

Abhängigkeiten deklarieren

Wenn Sie eine Abhängigkeit von Appcompat hinzufügen möchten, müssen Sie Ihrem Projekt das Google Maven-Repository hinzufügen. Weitere Informationen finden Sie im Maven-Repository von Google.

Fügen Sie der Datei build.gradle für Ihre App oder Ihr Modul die Abhängigkeiten für die erforderlichen Artefakte hinzu:

Cool

dependencies {
    def appcompat_version = "1.7.0"

    implementation "androidx.appcompat:appcompat:$appcompat_version"
    // For loading and tinting drawables on older versions of the platform
    implementation "androidx.appcompat:appcompat-resources:$appcompat_version"
}

Kotlin

dependencies {
    val appcompat_version = "1.7.0"

    implementation("androidx.appcompat:appcompat:$appcompat_version")
    // For loading and tinting drawables on older versions of the platform
    implementation("androidx.appcompat:appcompat-resources:$appcompat_version")
}

Weitere Informationen zu Abhängigkeiten finden Sie unter Build-Abhängigkeiten hinzufügen.

Feedback

Ihr Feedback hilft uns, Jetpack zu verbessern. Bitte teilen Sie uns mit, wenn Sie neue Probleme feststellen oder Ideen zur Verbesserung dieser Bibliothek haben. Sehen Sie sich die vorhandenen Probleme in dieser Bibliothek an, bevor Sie ein neues erstellen. Sie können einem vorhandenen Problem Ihre Stimme geben, indem Sie auf die Schaltfläche mit dem Stern klicken.

Neues Problem erstellen

Weitere Informationen finden Sie in der Dokumentation zum Issue Tracker.

Version 1.7

Version 1.7.0

29. Mai 2024

androidx.appcompat:appcompat:1.7.0 und androidx.appcompat:appcompat-resources:1.7.0 werden freigegeben. Version 1.7.0 enthält diese Commits.

Wichtige Änderungen seit Version 1.6.0

  • AppCompatDialog setzt jetzt über die ViewTree APIs die LifecycleOwner, SavedStateRegistryOwner und OnBackPressedDispatcherOwner in der Dekoransicht des Dialogfelds richtig. Dadurch werden Probleme beim Hosten eines ComposeView in einem AppCompatDialog behoben.
  • AppCompatActivity legt jetzt die ViewTreeOnBackPressedDispatcherOwner fest, damit der Dispatcher aus der Ansicht abgerufen werden kann.
  • Die Leistung von SupportMenuInflater wurde deutlich verbessert.
  • Locale.getDefault() gibt jetzt nach einem Kaltstart die Systemlokalisierung zurück.
  • Bei LinearLayoutCompat werden jetzt die Parameter für das Layout des Randes beibehalten.

Abhängigkeitsupdates

  • AppCompat hängt jetzt von Activity 1.7.0 ab.
  • AppCompat hängt jetzt von der Fragmentversion 1.5.4 ab.

Version 1.7.0-rc01

14. Mai 2024

androidx.appcompat:appcompat:1.7.0-rc01 und androidx.appcompat:appcompat-resources:1.7.0-rc01 werden freigegeben. Version 1.7.0-rc01 enthält diese Commits.

Version 1.7.0-beta01

1. Mai 2024

androidx.appcompat:appcompat:1.7.0-beta01 und androidx.appcompat:appcompat-resources:1.7.0-beta01 werden freigegeben. Version 1.7.0-beta01 enthält diese Commits.

Version 1.7.0-alpha03

26. Juli 2023

androidx.appcompat:appcompat:1.7.0-alpha03 und androidx.appcompat:appcompat-resources:1.7.0-alpha03 werden freigegeben. Version 1.7.0-alpha03 enthält diese Commits.

Neue Funktionen

  • Unterstützung für die Abfrage von Sprachen pro App in nicht aktivitätsbezogenen Kontexten (I58e753). Für diese Funktion wurden vier neue APIs hinzugefügt:

    • LocaleManagerCompat.getApplicationLocales(): Entwickler können die Sprachen pro App nicht mehr aus dem Aktivitätsbereich abrufen.

    • ContextCompat.getString(): Gibt lokalisierte Strings basierend auf den Sprachen der einzelnen Apps zurück.

    • ContextCompat.getContextForLanguage(): Der von dieser Methode zurückgegebene Kontext berücksichtigt die Spracheneinstellungen der App.

    • ConfigurationCompat.setLocales(): für die oben genannten APIs, um die Sprache der Konfiguration festzulegen.

Weitere API-Änderungen

  • setLineHeight(unit, lineHeight) zu TextView-Kompatibilitätsklassen hinzugefügt (Ia9fa9)
  • setLineHeight(unit, lineHeight) zu den TextView-Kompatibilitätsklassen hinzugefügt (Ib2ee1)
  • setLineHeight(unit, lineHeight) zu den TextView-Kompatibilitätsklassen hinzugefügt (I15716)

Fehlerkorrekturen

  • AppCompatDialog setzt jetzt über die ViewTree APIs die LifecycleOwner, SavedStateRegistryOwner und OnBackPressedDispatcherOwner in der Dekoransicht des Dialogfelds richtig. Dadurch werden Probleme beim Hosten eines ComposeView in einem AppCompatDialog behoben. AppCompat hängt jetzt von Activity 1.7.0 ab. (Ib28ab, b/261314581)
  • Leistung von SupportMenuInflater deutlich verbessern (I0b087)

Version 1.7.0-alpha02

8. Februar 2023

androidx.appcompat:appcompat:1.7.0-alpha02 und androidx.appcompat:appcompat-resources:1.7.0-alpha02 werden freigegeben. Version 1.7.0-alpha02 enthält diese Commits.

Fehlerkorrekturen

  • Ein Speicherleck in AppCompatDelegate.getLocaleManagerForApplication() wurde behoben (44b57fd)
  • AppCompat hängt jetzt von der Fragmentversion 1.5.4 (I54dcd) ab.

Version 1.7.0-alpha01

5. Oktober 2022

androidx.appcompat:appcompat:1.7.0-alpha01 und androidx.appcompat:appcompat-resources:1.7.0-alpha01 werden freigegeben. Version 1.7.0-alpha01 enthält diese Commits.

Fehlerkorrekturen

  • AppCompatActivity legt jetzt die ViewTreeOnBackPressedDispatcherOwner fest, damit der Dispatcher aus der Ansicht abgerufen werden kann. (I1a115, b/235416503)
  • Locale.getDefault() gibt jetzt nach einem Kaltstart die Systemlokalisierung zurück (I6a94b)
  • LinearLayoutCompat: Layoutparameter für Ränder werden jetzt beibehalten (Id2af4)

Version 1.6.1

Version 1.6.1

8. Februar 2023

androidx.appcompat:appcompat:1.6.1 und androidx.appcompat:appcompat-resources:1.6.1 werden freigegeben. Version 1.6.1 enthält diese Commits.

Fehlerkorrekturen

  • Ein Speicherleck in AppCompatDelegate.getLocaleManagerForApplication() wurde behoben (44b57fd)

Version 1.6.0

Version 1.6.0

11. Januar 2023

androidx.appcompat:appcompat:1.6.0 und androidx.appcompat:appcompat-resources:1.6.0 werden freigegeben. Version 1.6.0 enthält diese Commits.

Wichtige Änderungen seit Version 1.5.0

  • Unterstützung für die Anpassung von Gebietsschemata für Anwendungen hinzugefügt. Weitere Informationen finden Sie unter AppCompatDelegate.setApplicationLocales(LocaleListCompat). Bietet Abwärtskompatibilität mit der neuen API für sprachspezifische Einstellungen, die in Android 13 verfügbar ist.
  • Aktualisierungen der Ignorierbarkeit, um sie an das SDK für Android 13 (Tiramisu, API-Level 33) anzupassen.
  • DrawableWrapper-, DrawableContainer- und StateListDrawable-Kompatibilitätsklassen zur öffentlichen API-Oberfläche hinzugefügt

Version 1.6.0-rc01

7. September 2022

androidx.appcompat:appcompat:1.6.0-rc01 und androidx.appcompat:appcompat-resources:1.6.0-rc01 werden freigegeben. Version 1.6.0-rc01 enthält diese Commits.

Fehlerkorrekturen

  • AppCompatActivity legt jetzt die ViewTreeOnBackPressedDispatcherOwner fest, damit der Dispatcher aus der Ansicht abgerufen werden kann. (I1a115, b/235416503)
  • Eine Fehlerkorrektur rückgängig gemacht, durch die die an onConfigurationChanged übergebene Konfiguration überschrieben wurde. Dies hatte zu Problemen bei Tests geführt, bei denen eigene benutzerdefinierte Konfigurationen über onConfigurationChanged eingefügt wurden.

Version 1.6.0-beta01

10. August 2022

androidx.appcompat:appcompat:1.6.0-beta01 und androidx.appcompat:appcompat-resources:1.6.0-beta01 werden freigegeben. Version 1.6.0-beta01 enthält diese Commits.

API-Änderungen

  • Die DrawableWrapper-, DrawableContainer- und StateListDrawable-Kompatibilitätsklassen in die öffentliche API verschieben (I37f3e, b/227789566)
  • Einführung einer neuen Factory für den asynchronen Layout-Aufbau. (Ia657b)

Fehlerkorrekturen

  • Toolbar ruft onPrepareMenu() jetzt vor dem Anzeigen des Menüs auf, nicht bedingungslos beim Erstellen des Menüs. (I2a58d, b/232206677)
  • AppCompat hängt jetzt explizit von Lifecycle 2.5.1 und SavedState 1.2.0 ab. (I7e3e2)
  • Unterstützung für den Rückruf von AppCompatDelegate und die von AppCompat bereitgestellte Symbolleiste hinzugefügt. (I24062)
  • AppCompat APIs für 1.5.0-beta01 fertigstellen (I2a43d, b/236866227)
  • AppCompat APIs für 1.5.0-beta01 fertigstellen (I2a43d, b/236866227)

Version 1.6.0-alpha05

15. Juni 2022

androidx.appcompat:appcompat:1.6.0-alpha05 und androidx.appcompat:appcompat-resources:1.6.0-alpha05 werden freigegeben. Version 1.6.0-alpha05 wurde in einem privaten Pre-Release-Branch entwickelt und hat keine öffentlichen Commits.

API-Änderungen

  • Aktualisierungen der Ignorierbarkeit, um sie an die endgültige API-Oberfläche im Tiramisu Beta 3 SDK anzupassen
  • minCompileSdk ist jetzt 33, um mit dem Tiramisu Beta 3 SDK übereinzustimmen.

Version 1.6.0-alpha04

18. Mai 2022

androidx.appcompat:appcompat:1.6.0-alpha04 und androidx.appcompat:appcompat-resources:1.6.0-alpha04 werden freigegeben. Diese Bibliothek wurde in einem privaten Pre-Release-Branch entwickelt. Daher ist kein Commit-Log verfügbar.

API-Änderungen

  • API hinzufügen, um die Breite von SwitchCompat für die Verwendung durch MDC-Android zu überschreiben

Fehlerkorrekturen

  • Verwaltete Konfiguration vermeiden, wenn die Konfiguration außerhalb von „attachBaseConfig“ geändert wird

Version 1.6.0-alpha03

27. April 2022

androidx.appcompat:appcompat:1.6.0-alpha03 und androidx.appcompat:appcompat-resources:1.6.0-alpha03 werden freigegeben.

Für die Kompilierung dieser Version ist Android 13 Beta 1 erforderlich. Außerdem ist nicht garantiert, dass sie mit zukünftigen Entwicklervorschauen zur Laufzeit kompatibel ist.

Neue Funktionen

  • Unterstützung für die app-weite benutzerdefinierte Sprachauswahl über AppCompatDelegate.setApplicationLocales() Delegiert an die Plattformimplementierung bei API 33 und höher.

Version 1.6.0-alpha01

23. Februar 2022

androidx.appcompat:appcompat:1.6.0-alpha01 und androidx.appcompat:appcompat-resources:1.6.0-alpha01 werden freigegeben. Version 1.6.0-alpha01 wurde aus einem internen Branch erstellt und enthält keine öffentlich sichtbaren Commits.

Für diese Version ist Android Tiramisu DP1 zum Kompilieren erforderlich. Die Laufzeitkompatibilität mit zukünftigen Entwicklervorschauen ist nicht garantiert.

Neue Funktionen

  • Unterstützung für die Anpassung von Gebietsschemata für Anwendungen hinzugefügt. Weitere Informationen findest du unter AppCompatDelegate.setApplicationLocales(LocaleListCompat). Bietet Abwärtskompatibilität mit der neuen API für sprachspezifische Einstellungen, die in Android 13 verfügbar ist.

Version 1.5.1

Version 1.5.1

7. September 2022

androidx.appcompat:appcompat:1.5.1 und androidx.appcompat:appcompat-resources:1.5.1 werden freigegeben. Version 1.5.1 enthält diese Commits.

Abhängigkeitsupdates

Version 1.5.0

Version 1.5.0

10. August 2022

androidx.appcompat:appcompat:1.5.0 und androidx.appcompat:appcompat-resources:1.5.0 werden freigegeben. Version 1.5.0 enthält diese Commits.

Wichtige Änderungen seit Version 1.4.0

  • Diese stabile Version enthält Verbesserungen bei der Stabilität des Nachtmodus, Fehlerkorrekturen, Unterstützung für zusammengesetzte zeichenbare Tönungen für AppCompat-Text-Widgets sowie Verbesserungen bei der API-Nutzerfreundlichkeit. Eine detaillierte Liste der Änderungen finden Sie in den vorherigen Versionshinweisen der 1.5.0-Reihe.

Version 1.5.0-rc01

27. Juli 2022

androidx.appcompat:appcompat:1.5.0-rc01 und androidx.appcompat:appcompat-resources:1.5.0-rc01 werden freigegeben. Version 1.5.0-rc01 enthält diese Commits.

Fehlerkorrekturen

  • Es wurde ein Problem behoben, bei dem der Kontext-Wrapper von AppCompat die Ressourcenimplementierung des Anwendungskontexts wiederverwendete, was dazu führte, dass uiMode im Anwendungskontext überschrieben wurde. (Idf9d5)

Version 1.5.0-beta01

13. Juli 2022

androidx.appcompat:appcompat:1.5.0-beta01 und androidx.appcompat:appcompat-resources:1.5.0-beta01 werden freigegeben. Version 1.5.0-beta01 enthält diese Commits.

API-Änderungen

  • Fügen Sie ein überschreibbares Flag hinzu, um die Standardanpassung der Schalterbreite zu deaktivieren. (I37cb7)
  • @FloatRange-Anmerkung zur API für den Thumbnail-Position-Getter hinzufügen (If524c)
  • AnimatedStateListDrawableCompat (Ieb4ec) fehlende Anmerkungen zur Null-Zulässigkeit hinzufügen

Fehlerkorrekturen

  • AppCompat APIs für 1.5.0-beta01 fertigstellen (I2a43d, b/236866227)
  • Ändern des className-Werts für ActionMenuItemView, damit er als Button behandelt wird (I5ee1c)

Version 1.5.0-alpha01

6. April 2022

androidx.appcompat:appcompat:1.5.0-alpha01 und androidx.appcompat:appcompat-resources:1.5.0-alpha01 werden freigegeben. Version 1.5.0-alpha01 enthält diese Commits.

API-Änderungen

  • Es wurde eine neue API hinzugefügt, um die Position des Schalters für Unterklassen freizugeben (I9bfb4)
  • Die Nullbarkeit wurde an Tiramisu DP2 (I0cbb7) angepasst.
  • Backportierte Färbung zusammengesetzter Zeichnbilder auf von TextView abgeleitete Widgets (Idf98c, b/165822337)
  • AppCompatDialog erweitert jetzt ComponentDialog für die Kompatibilität mit OnBackPressedDispatcher (Id9b91, b/217620781)
  • Die Sichtbarkeit von SearchView.onQueryRefine() ist jetzt geschützt, um Überschreibungen zu ermöglichen (I6cce0, b/212882845)

Fehlerkorrekturen

  • AppCompat Toolbar ruft jetzt die onPrepareMenu() API von MenuHostHelper auf. (I9b9b5, b/227376894)
  • Bei AppCompatEditText, AppCompatAutoCompleteEditText und AppCompatMultiAutoCompleteEditText wird „clickable“ oder „longClickable“ im Konstruktor nicht mehr zurückgesetzt, wenn sie in XML festgelegt sind (Ic5066, b/221094907)
  • AppCompatEditText, AppCompatAutoCompleteTextView und AppCompatMultiAutoCompleteTextView rufen während des Konstruktors nicht die überschriebene setKeyListener auf (I5c13a, b/208480173)
  • Appcompat umschließt keine Instanzen von NumberKeyListener, die an setKeyListener übergeben werden. So kann TextView die Sprache auf NumberKeyListeners korrekt konfigurieren. (Ibf113, b/207119921)
  • Problem mit allen NumberKeyListener-Unterklassen behoben, die in AppCompat 1.4.0 eingeführt wurden und die Eingabe unerwarteter Zeichen wie Satzzeichen ermöglichten (Iede7a, b/207119921)

Version 1.4.2

Version 1.4.2

1. Juni 2022

androidx.appcompat:appcompat:1.4.2 und androidx.appcompat:appcompat-resources:1.4.2 werden freigegeben. Version 1.4.2 enthält diese Commits.

Fehlerkorrekturen

  • Behebung eines Absturzes, bei dem AppCompatDelegateImpl vor dem Erstellen der Aktionsleiste einen internen Aufruf an ensureSubDecor gesendet hat (aosp/2048349, b/226648941)

Version 1.4.1

12. Januar 2022

androidx.appcompat:appcompat:1.4.1 und androidx.appcompat:appcompat-resources:1.4.1 werden freigegeben. Version 1.4.1 enthält diese Commits.

Fehlerkorrekturen

  • AppCompatEditText, AppCompatAutoCompleteTextView und AppCompatMultiAutoCompleteTextView rufen die überschriebene setKeyListener nicht während des Konstruktors auf. (I5c13a, b/208480173)
  • Emoji2 bricht Instanzen von NumberKeyListener nicht um, sodass die Sprache über den Textview konfiguriert werden kann.
    • Appcompat umschließt keine Instanzen von NumberKeyListener, die an setKeyListener übergeben werden. So kann TextView das Gebietsschema für NumberKeyListeners korrekt konfigurieren. (Ibf113, b/207119921)
  • Behebt das Problem mit allen NumberKeyListener-Unterklassen, die in appcompat 1.4.0 eingeführt wurden und durch die unerwartete Zeichen wie Satzzeichen eingegeben werden konnten (b/207119921) (Iede7a, b/207119921)

Version 1.4.0

Version 1.4.0

17. November 2021

androidx.appcompat:appcompat:1.4.0 und androidx.appcompat:appcompat-resources:1.4.0 werden freigegeben. Version 1.4.0 enthält diese Commits.

Wichtige Änderungen seit Version 1.3.0

  • Die Bibliothek ist jetzt auf die Java 8-Sprachebene ausgerichtet.
  • Die Unterstützung für aktualisierbare Emojis ist standardmäßig über die androidx.emoji2-Bibliothek aktiviert.
  • Verbesserte Attributprüfung im Layout Inspector von Android Studio (I02d55)
  • Unterstützung für verschachtelte gefärbte Ressourcen und Vektorgrafiken in Backports für das Laden von AppCompat-Ressourcen hinzugefügt Wenn Backports aktiviert sind, können Apps „getDrawable()“ jedoch nicht für ein benutzerdefiniertes Ressourcenobjekt überschreiben. (Ia6b03, b/176129022)
  • Backportierter färbbarer Hintergrund und Häkchen für CheckedTextView (I8575c)

Version 1.4.0-rc01

27. Oktober 2021

androidx.appcompat:appcompat:1.4.0-rc01 und androidx.appcompat:appcompat-resources:1.4.0-rc01 werden freigegeben. Version 1.4.0-rc01 enthält diese Commits.

Version 1.4.0-beta01

29. September 2021

androidx.appcompat:appcompat:1.4.0-beta01 und androidx.appcompat:appcompat-resources:1.4.0-beta01 werden freigegeben. Version 1.4.0-beta01 enthält diese Commits.

API-Änderungen

  • AndroidX AppCompat Toolbar ist jetzt ein MenuHost und kann MenuProviders verwalten. (I5cd95)

Fehlerkorrekturen

  • Die AppCompatProgressBar verarbeitet jetzt Layerlisten-Fortschrittsbalken korrekt (I6ece3, b/142004509)
  • android:digits wird in AppCompatEditText korrekt beibehalten. Dadurch wird Fehler 193047889 behoben, der in AppCompat 1.4.0-alpha03 eingeführt wurde. (I4b4fc, b/193047889)
  • Integriertes OnReceiveContentListener SDK und Unterstützung von lib APIs. (Ic6914, b/173814913)

Version 1.4.0-alpha03

30. Juni 2021

androidx.appcompat:appcompat:1.4.0-alpha03 und androidx.appcompat:appcompat-resources:1.4.0-alpha03 werden freigegeben. Version 1.4.0-alpha03 enthält diese Commits.

Neue Funktionen

  • Die Bibliothek ist jetzt auf die Java 8-Sprachebene ausgerichtet.
  • Unterstützung für Emoji 2 für weitere TextView-Unterklassen (AppCompatMultiAutoCompleteTextView, AppCompatAutoCompleteTextView, AppCompatRadioButton, AppCompatCheckBox) hinzufügen

API-Änderungen

  • Es wurde eine API hinzugefügt, mit der eine InputConnection so konfiguriert werden kann, dass sie View.performReceiveContent verwendet, um IME-Aufrufe an InputConnection.commitContent zu verarbeiten. (I3a2ad)
  • Unterstützung für EmojiCompat für AppCompatMultiAutoCompleteTextView (Ifece0) hinzufügen
  • Unterstützung für EmojiCompat für AppCompatAutoCompleteTextView (Ia1f4b) hinzufügen
  • Unterstützung für EmojiCompat für AppCompatRadioButton (If08af) hinzufügen
  • Unterstützung für EmojiCompat für AppCompatCheckBox (I2b3bc) hinzufügen
  • Nullwerte für KeyListener in AppCompatEditText zulassen Dadurch wird die „non-null“-Anmerkung rückgängig gemacht, die AppCompatEditText in 1.4-alpha01 hinzugefügt wurde, und das vorherige Verhalten wird wiederhergestellt, wenn „null“ übergeben wird. (I21482, b/189559345)
  • Fügen Sie PopupMenu.setForceShowIcon hinzu, um mit Plattform-APIs übereinzustimmen (I43bb3, b/182789798).

Fehlerkorrekturen

  • Fehler in AppCompatEditText behoben, durch den der in XML angegebene Eingabetyp zurückgesetzt wurde, um Varianten zu entfernen. Dieser Fehler wurde in AppCompat 1.4.0-alpha01 eingeführt. (I9df36, b/191061070)

Version 1.4.0-alpha02

2. Juni 2021

androidx.appcompat:appcompat:1.4.0-alpha02 und androidx.appcompat:appcompat-resources:1.4.0-alpha02 werden freigegeben. Version 1.4.0-alpha02 enthält diese Commits.

API-Änderungen

  • AppCompatDialogFragment-Konstruktor hinzugefügt, der eine Layout-ID (Icbf22, b/188119987) annimmt
  • Verbesserte Unterstützung für den Layout-Inspektor (I02d55)
  • Paket in emoji2-views-helper in androidx.emoji2.viewsintegration umbenannt Dies ist eine bahnbrechende Änderung für AppCompat 1.4.0-alpha01. In Apps muss die AppCompat-Abhängigkeit aktualisiert werden, damit die neue emoji2-Version verwendet werden kann. (Ie8397)

Fehlerkorrekturen

  • Ein Problem wurde behoben, durch das angehaltene Aktivitäten keine Konfigurationsänderungen von AppCompat-instrumentierten Änderungen des Nachtmodus erhielten. (I8fa8f, b/188681415)
  • Behobener Fehler in AppCompatEditText, durch den sich Ansichten auch dann aufrufen lassen, wenn android:focusable="false" in der XML-Datei angegeben wurde (in AppCompat 1.4.0-alpha01 eingeführter Fehler) (Ib9412)

Version 1.4.0-alpha01

18. Mai 2021

androidx.appcompat:appcompat:1.4.0-alpha01 und androidx.appcompat:appcompat-resources:1.4.0-alpha01 werden freigegeben. Version 1.4.0-alpha01 enthält diese Commits.

API-Änderungen

  • Unterstützung für EmojiCompat für eine Vielzahl von AppCompat-Widgets (Id409b, If7a1a, Ic262d, Ib5f4a, I4fb3c)
  • Unterstützung für verschachtelte gefärbte Ressourcen und Vektorgrafiken in Backports für das Laden von AppCompat-Ressourcen hinzugefügt Wenn Backports jedoch aktiviert sind, können Apps getDrawable() in einem benutzerdefinierten Ressourcenobjekt nicht überschreiben. (Ia6b03, b/176129022)
  • Verbesserte Unterstützung für den Layout Inspector (I6d771)

Fehlerkorrekturen

  • Ein Problem wurde behoben, bei dem der Rückruf überschrieben wurde, wenn „setSupportActionBar“ nach dem Festlegen des Fenster-Callbacks aufgerufen wurde. (Ie43ee, b/186791590)
  • Es wurde eine Behelfslösung für ein Problem in den SDKs 29 und 30 hinzugefügt, bei dem aus dem Drawable-Cache geklonte ColorStateListDrawable-Ressourcen erst dann eine Standardfarbe laden, wenn sie einen Statuswechsel erhalten. (Iedb4b)
  • Vermeiden Sie NPE beim Umgang mit null-benutzerdefinierten Auswahlaktionsmodus-Callbacks in AppCompat-unterstützten Ansichten. (I033c7, b/173435375)

Abhängigkeitsupdates

Externer Beitrag

  • Einfärbbarer Hintergrund und Häkchen für CheckedTextView zurückportieren (I8575c)

Version 1.3.1

Version 1.3.1

21. Juli 2021

androidx.appcompat:appcompat:1.3.1 und androidx.appcompat:appcompat-resources:1.3.1 werden freigegeben. Version 1.3.1 enthält diese Commits.

Abhängigkeitsupdates

  • AppCompat hängt jetzt von Activity 1.2.4 und Fragment 1.3.6 ab. Die Fehlerkorrekturen aus diesen Releases sind daher standardmäßig bei der Verwendung von AppCompat 1.3.1 enthalten. (I8fbec)

Version 1.3.0

Version 1.3.0

18. Mai 2021

androidx.appcompat:appcompat:1.3.0 und androidx.appcompat:appcompat-resources:1.3.0 werden freigegeben. Version 1.3.0 enthält diese Commits.

Wichtige Änderungen seit Version 1.2.0

  • Behebung eines Problems bei der Weitergabe von android:theme-Attributen in <include>d-Layouts auf Geräten mit einer älteren Android-Version als Lollipop
  • Die Bibliotheksgröße wurde durch die Umwandlung vieler PNG-Ressourcen in VectorDrawables reduziert.
  • Unterstützung für Drag-and-drop-Ereignisse für AppCompatEditText mit OnReceiveContentListener
  • Aktualisiert, um Änderungen bei der Verarbeitung von Fenster-Inset in Android 11 zu unterstützen
  • Unterstützung für RTL in Menüpunkten mit Symbolen hinzugefügt
  • Unterstützung für das Einfügen von Rich-Content in AppCompatEditText (z. B. Einfügen eines Bildes)

  • Aktualisierte Abhängigkeiten: appcompat hat viele seiner transitiven Abhängigkeiten aktualisiert, um neue Funktionen und Fehlerkorrekturen zu unterstützen:

Version 1.3.0-rc01

24. März 2021

androidx.appcompat:appcompat:1.3.0-rc01 und androidx.appcompat:appcompat-resources:1.3.0-rc01 werden freigegeben. Version 1.3.0-rc01 enthält diese Commits.

Fehlerkorrekturen

  • Verhindert, dass Berechtigungen beim Einfügen von IME-Inhalten vorzeitig widerrufen werden

Abhängigkeitsupdates

Externer Beitrag

  • Korrektur der Übertragung des android:theme-Attributs auf <include>d-Layouts auf Geräten ohne Lollipop (Simon Bergner, Opera)

Version 1.3.0-beta01

13. Januar 2021

androidx.appcompat:appcompat:1.3.0-beta01 und androidx.appcompat:appcompat-resources:1.3.0-beta01 werden freigegeben. Version 1.3.0-beta01 enthält diese Commits.

Neue Funktionen

  • Drawables für den Aktionsmodus auf Themenebene wurden durch Vektorquellen ersetzt. Dies kann zu geringfügigen Änderungen am Erscheinungsbild einzelner Symbole führen. (I741a6)

API-Änderungen

  • Drag-and-drop (Drop-Ereignisse) in AppCompatEditText mit OnReceiveContentListener integriert. (Ib26c9, b/175343405)
  • OnReceiveContentListener und zugehörige APIs wurden aktualisiert. Weitere Informationen finden Sie unter Änderungen an der androidx.core-Bibliothek. (Ib4616, b/173814913)
  • widget.RichContentReceiverCompat wurde zu view.OnReceiveContentListener verschoben. (Ifdab7, b/173814913)
  • APIs zum Bereitstellen und Abrufen des ursprünglichen umgebenden Texts wurden zu EditorInfoCompat zurückportiert. So können IME-Apps zusätzliche IPC-Latenzen vermeiden. (Ie3809)

Version 1.3.0-alpha02

19. August 2020

androidx.appcompat:appcompat:1.3.0-alpha02 und androidx.appcompat:appcompat-resources:1.3.0-alpha02 werden freigegeben. Version 1.3.0-alpha02 enthält diese Commits.

Fehlerkorrekturen

  • Die PNG-Zeichnelemente der AppCompatRatingBar wurden durch Vektorquellen ersetzt. Dies kann zu geringfügigen Änderungen bei der visuellen Darstellung einzelner Sterne führen. (I6b99d)
  • WindowInsetsCompat auf Android 11-APIs aktualisieren (I3df9e)
  • Unterstützung von RTL in Menüpunkten mit Symbolen (I2f5c5)

Abhängigkeitsupdates

  • Die Abhängigkeit von AppCompat wurde von Fragment 1.1.0 auf Fragment 1.3.0-alpha08 aktualisiert. Wir empfehlen Ihnen dringend, die Versionshinweisen zu Fragment 1.2.0 zu lesen, um die wichtigsten Änderungen der vorherigen Fragment-Version zu erfahren.
  • Die Abhängigkeit von AppCompat wurde von „Aktivität 1.0.0“ auf Aktivität 1.2.0-alpha08 aktualisiert. Wir empfehlen Ihnen dringend, die Versionshinweisen zu Activity 1.1.0 zu lesen, um die wichtigsten Änderungen der vorherigen Activity-Version zu erfahren.
    • AppCompatActivity verwendet jetzt die OnContextAvailableListener API, die in Aktivität 1.2.0-alpha08 vorgestellt wurde, um die AppCompatDelegate einzurichten. Alle Listener, die Unterklassen von AppCompatActivity hinzugefügt werden, werden nach diesem Listener ausgeführt. (I513da)

Version 1.3.0-alpha01

20. Mai 2020

androidx.appcompat:appcompat:1.3.0-alpha01 und androidx.appcompat:appcompat-resources:1.3.0-alpha01 werden freigegeben. Version 1.3.0-alpha01 enthält diese Commits.

Neue Funktionen

  • Neue Lint-Regel hinzufügen, um Aufrufe von setActionBar in Aktivitäten zu melden, die AppCompatActivity erweitern
  • Unterstützung für ViewTreeLifecycleOwner von Lifecycle 2.3.0-alpha01, ViewTreeViewModelStoreOwner von Lifecycle 2.3.0-alpha03 und ViewTreeSavedStateRegistryOwner von SavedState 1.1.0-alpha01 hinzugefügt, wenn ein View in einem AppCompatActivity verwendet wird. (b/151603528, aosp/1300264)
  • Gängige API zum Einfügen von Rich-Inhalten hinzufügen (z. B. Einfügen eines Bildes) Der neue Callback bietet eine einzelne API, die Apps implementieren können, um die verschiedenen Möglichkeiten zum Einfügen von Rich-Inhalten zu unterstützen. Derzeit wird die API nur zu AppCompatEditText hinzugefügt und für die folgenden Codepfade aufgerufen:
    • Aus der Zwischenablage einfügen
    • Einfügen von Inhalten über die IME (InputConnection.commitContent) (I22bf7)

Fehlerkorrekturen

  • Über AppCompat 1.2.0-rc01: AppCompat ruft onMenuOpened() nicht mehr mit einem null-Menü auf. (b/142843126)
  • Textlink- und Texthinweisfarben auf älteren Geräten korrekt auflösen, wenn TextViewCompat.setTextAppearance mit einem Textstil aufgerufen wird, der Farbstatuslisten enthält, die auf Farbattributwerte des Designs verweisen (b/154702995)

Version 1.2.0

Version 1.2.0

5. August 2020

androidx.appcompat:appcompat:1.2.0 und androidx.appcompat:appcompat-resources:1.2.0 werden freigegeben. Version 1.2.0 enthält diese Commits.

Wichtige Änderungen seit Version 1.1.0

  • Die Unterstützung für Anwendungsfälle für Konfigurationsüberschreibungen wurde verbessert, einschließlich benutzerdefinierter Gebietsschemas und Schriftschnitte. Hier finden Sie ein Beispiel für die korrekte Implementierung von Überschreibungen mit appcompat:1.2.0.
  • AppCompatDelegate.attachBaseContext() wurde eingestellt. Wenn Sie diese Methode aufrufen oder überschreiben, verwenden Sie stattdessen AppCompatDelegate.attachBaseContext2().
  • CollapsibleActionView wurde eingestellt. Diese Benutzeroberfläche ist nicht mehr erforderlich. Verwenden Sie stattdessen die von der Plattform bereitgestellte android.view.CollapsibleActionView-Benutzeroberfläche.

Version 1.2.0-rc02

22. Juli 2020

androidx.appcompat:appcompat:1.2.0-rc02 und androidx.appcompat:appcompat-resources:1.2.0-rc02 werden freigegeben. Version 1.2.0-rc02 enthält diese Commits.

Fehlerkorrekturen

  • Ein Problem im Zusammenhang mit dem Nachtmodus wurde behoben, bei dem das Aufrufen von AppCompatDelegate.setDefaultNightMode über ein Dialogfeld gelegentlich dazu führte, dass Aktivitäten nicht neu erstellt und der neue Modus nicht angewendet wurde. (aosp/1348308, b/158923881)

Version 1.2.0-rc01

14. Mai 2020

androidx.appcompat:appcompat:1.2.0-rc01 und androidx.appcompat:appcompat-resources:1.2.0-rc01 werden freigegeben. Version 1.2.0-rc01 enthält diese Commits.

API-Änderungen

  • Für AppCompatDelegate.setLocalNightMode ist die SDK-Version 17 oder höher erforderlich, da aufgrund eines Plattformproblems Konfigurationsänderungen zwischen Aktivitäten in früheren SDKs weitergegeben werden.

Fehlerkorrekturen

  • AppCompatDelegate.setLocalNightMode kann jetzt vor Activity.attachBaseContext aufgerufen werden
  • Behebung eines Problems beim Verbrauch von ActionBarOverlayLayout-Inset-Assets, bei dem fälschlicherweise die im Cache gespeicherten Insets verwendet wurden
  • AppCompat ruft onMenuOpened() nicht mehr mit einem null-Menü auf. (b/142843126)

Version 1.2.0-beta01

1. April 2020

androidx.appcompat:appcompat:1.2.0-beta01 und androidx.appcompat:appcompat-resources:1.2.0-beta01 werden freigegeben. Version 1.2.0-beta01 enthält diese Commits.

Neue Funktionen

  • Die folgenden neuen Lint-Regeln wurden hinzugefügt, die in den folgenden Fällen eine falsche Verwendung von AppCompat melden:
    • Laden von Farbstatuslisten: Es wird empfohlen, die APIs ContextCompat und AppCompatResources zu verwenden, um die Abwärtskompatibilität zu gewährleisten.
    • Laden von drawables: Es wird empfohlen, die ContextCompat- und ResourcesCompat-APIs für die Abwärtskompatibilität zu verwenden.
    • Verwendung von Listen mit Farbstatus mit Alphaattribut: Flags ohne android:alpha-Attribut, was zu einer falschen Darstellung auf einigen Plattformversionen führt
    • Tönung von Bildansichten: Flags, bei denen app:tint nicht verwendet wird, was zu einer falschen Darstellung auf älteren Plattformversionen führt
    • Verwendung zusammengesetzter drawables und Tönung bei Textansichten: Es wird empfohlen, für die Abwärtskompatibilität kompatible Attribute und APIs zu verwenden.

Fehlerkorrekturen

  • Ein Problem wurde behoben, bei dem ActionBarOverlayLayout (Fensterdekorationsaktion) WindowInsets nicht richtig sendet.
  • Probleme bei der Färbung von Drawables und der Textdarstellung in älteren Versionen der Plattform wurden behoben
  • Ein Problem wurde behoben, bei dem androidx.appcompat:appcompat:1.1.0 die WebView zum Absturz bringt, wenn sie lange gedrückt wird (b/141351441)
  • Es wurden Fehlerkorrekturen für Probleme mit der Manipulation des Basiskontexts und dem Abrufen von Systemdiensten beim Starten von Aktivitäten implementiert.

Version 1.2.0-alpha03

4. März 2020

androidx.appcompat:appcompat:1.2.0-alpha03 und androidx.appcompat:appcompat-resources:1.2.0-alpha03 werden freigegeben. Version 1.2.0-alpha03 enthält diese Commits.

Fehlerkorrekturen

  • Ein Problem wurde behoben, durch das der Statusschutz für den Aktionsmodus fälschlicherweise in die Navigationsleiste ragte und die falsche Farbe hatte (Ia4a09)
  • Behebung eines Problems, bei dem angehaltene Aktivitäten bei API-Level 23 und niedriger nicht fortgesetzt wurden (I45201)

Version 1.2.0-alpha02

29. Januar 2020

androidx.appcompat:appcompat:1.2.0-alpha02 und androidx.appcompat:appcompat-resources:1.2.0-alpha02 werden freigegeben. Version 1.2.0-alpha02 enthält diese Commits.

Fehlerkorrekturen

  • Problem behoben, bei dem die Webview bei langem Drücken mit AppCompat 1.1.0 abstürzt (b/141351441)
  • Die Färbung von Drawables in TextViews im Vergleich zu zusammengesetzten Drawables auf API-Level 23 wurde korrigiert (aosp/1172194)
  • Der Basiskontext ist immer ein Wrapper (aosp/1194355)
  • Es wurden einige Verbesserungen hinzugefügt, um die Konfiguration des Basiskontexts intelligenter zu gestalten (aosp/1204543)
  • createConfigurationContext() für Robolectric deaktiviert (aosp/1186218)

Version 1.2.0-alpha01

4. Dezember 2019

androidx.appcompat:appcompat:1.2.0-alpha01 und androidx.appcompat:appcompat-resources:1.2.0-alpha01 werden freigegeben. Version 1.2.0-alpha01 enthält diese Commits.

Fehlerkorrekturen

  • Aufrufe von PackageManager.getActivityInfo führen im strikten Modus mit aktivierten bootfähigen Prüfungen nicht mehr zu Abstürzen
  • Korrekturen bei der Tönung von Drawables auf AppCompatButton
  • Korrekturen bei Färbung und Textdarstellung in älteren Versionen der Plattform

Version 1.1.0

Version 1.1.0

5. September 2019

androidx.appcompat:appcompat:1.1.0 und androidx.appcompat:appcompat-resources:1.1.0 werden freigegeben. Die Commits, die in dieser Version enthalten sind, finden Sie hier.

Wichtige Änderungen seit Version 1.0.0

  • Verbesserungen am dunklen Modus: MODE_NIGHT_AUTO und der Wechsel zwischen dunklem und hellem Modus basierend auf der aktuellen Uhrzeit sind jetzt eingestellt. Verwenden Sie eine explizite Einstellung oder MODE_NIGHT_AUTO_BATTERY.
  • Aktivität 1.0: AppCompatActivity erstreckt sich jetzt transitiven über ComponentActivity von Aktivität 1.0.0 über Fragment 1.1.0. Informationen zu den Änderungen in den einzelnen Bibliotheken finden Sie in den zugehörigen Releasehinweisen.
  • AppCompatActivity LayoutId-Konstruktor: Unterklassen von AppCompatActivity können jetzt optional einen Konstruktor von AppCompatActivity aufrufen, der eine R.layout-ID annimmt, die das Layout angibt, das als Inhaltsansicht festgelegt werden soll. Dies ist eine Alternative zum Aufrufen von setContentView() in onCreate(). Dies ändert nichts an der Anforderung, dass Ihre Unterklasse einen Konstruktor ohne Argumente haben muss.

Version 1.1.0-rc01

2. Juli 2019

androidx.appcompat:appcompat:1.1.0-rc01 und androidx.appcompat:appcompat-resources:1.1.0-rc01 werden freigegeben. Die Commits, die in dieser Version enthalten sind, finden Sie hier.

Fehlerkorrekturen

  • DayNight berücksichtigt jetzt configChanges richtig (aosp/981105)
  • onConfigurationChanged nur bei gestarteten Aktivitäten aufrufen (aosp/987483)

Version 1.1.0-beta01

5. Juni 2019

androidx.appcompat:appcompat:1.1.0-beta01 und androidx.appcompat:appcompat-resources:1.1.0-beta01 werden freigegeben. Die Commits, die in dieser Version enthalten sind, finden Sie hier.

Fehlerkorrekturen

  • Empfänger in AppCompatDialogs bereinigen (aosp/959376)
  • Unterstützung für buttonGravity=center_vertical in der Symbolleiste hinzufügen (b/130361721)
  • Horizontalen Versatz des Spinners korrigieren (b/79477181)

Version 1.1.0-alpha05

7. Mai 2019

androidx.appcompat:appcompat:1.1.0-alpha05 und androidx.appcompat:appcompat-resources:1.1.0-alpha05 werden freigegeben. Die Commits, die in dieser Version enthalten sind, finden Sie hier.

Neue Funktionen

Fehlerkorrekturen

  • Diverse Fehlerkorrekturen für den Tag-/Nachtmodus
  • Umriss bei jeder Hintergrundänderung in der ActionBar ungültig machen
  • Scrollen des Spinner-Widgets korrigieren
  • Behebung des Problems, dass benutzerdefinierte Fensterhintergründe in AlertDialog überschrieben wurden

Version 1.1.0-alpha04

3. April 2019

androidx.appcompat:appcompat:1.1.0-alpha04 und androidx.appcompat:appcompat-resources:1.1.0-alpha04 werden freigegeben. Die Commits, die in dieser Version enthalten sind, finden Sie hier.

Neue Funktionen

  • Neue Themenfamilie ThemeOverlay.AppCompat.DayNight hinzugefügt. Diese sollten bei Verwendung der Tag/Nacht-Funktion verwendet werden.

API-Änderungen

  • AppCompatActivity enthält jetzt einen zweiten Konstruktor, der eine @LayoutRes int annimmt. Damit wird das vorherige Verhalten ersetzt, bei dem die AppCompatActivity-Klasse mit @ContentView annotiert wurde. Dieser Ansatz funktioniert sowohl in App- als auch in Bibliotheksmodulen. (b/128352521)

Fehlerkorrekturen

  • Interne Abhängigkeiten nach Möglichkeit an stabile Versionen angepinnt
  • Behobenes Problem beim AppCompatSpinnerScrollen im Drop-down-Menü (b/124274573)
  • Ruft applyOverrideConfiguration() nur auf, wenn dies für „Tag/Nacht“ erforderlich ist

Version 1.1.0-alpha03

13. März 2019

androidx.appcompat:appcompat:1.1.0-alpha03 und androidx.appcompat:appcompat-resources:1.1.0-alpha03 werden freigegeben. Dies ist die erste Version von appcompat-resources. Eine vollständige Liste der Commits in dieser Version finden Sie hier.

Neue Funktionen

  • Die neue Bibliothek „appcompat-resources“ enthält APIs, mit denen Apps Drawables (einschließlich Vektor-Drawables) in älteren Versionen der Plattform laden und einfärben können. Diese Funktion war zuvor Teil des AppCompat-Moduls, ist jetzt aber ohne den Overhead des vollständigen AppCompat-Backports von Material Design verfügbar, einschließlich Widgets, Dialogen und Nachtmodus.
  • Wichtige Fehlerkorrekturen für den Tag-/Nachtmodus
  • Neue MODE_NIGHT_AUTO_BATTERY-Option für den Tag-/Nachtmodus
  • Zeichnbare Tönung in AppCompatTextView
  • Der Symbolleistenüberlauf kann jetzt mit themenbezogenen Farbstatuslisten gestaltet werden
  • Für Menüsymbole können jetzt Farben verwendet werden, die auf Designattribute verweisen
  • Das neue Attribut „app:menu“ kann in einer Symbolleiste festgelegt werden, um den Menüinhalt bei der Anzeige bereitzustellen.

Fehlerkorrekturen

  • Der Standard-Färbungsmodus für ImageView in Version 21 wurde korrigiert.
  • Das Pop-up mit dem Ladekreisel wurde bei der Gerätedrehung nicht mehr korrekt geschlossen.
  • Bei „Fixed DayNight“ wird configChanges im Manifest nicht berücksichtigt
  • Behoben: Der Wechsel zu MODE_NIGHT_FOLLOW_SYSTEM funktioniert nicht (b/111345020)
  • Behoben: WebView setzt Tag/Nacht-Ressourcen zurück (b/37124582)

Version 1.1.0-alpha02

7. Februar 2019

androidx.appcompat:appcompat 1.1.0-alpha02 wird veröffentlicht.

Neue Funktionen

  • Ressourcenspezifische drawable-Verarbeitung in einen Hook extrahiert (aosp/870976)
  • Es ist jetzt möglich, in der Symbolleiste titleTextColor und subtitleTextColor eine ColorStateList zu verwenden. Außerdem wurden ColorStateList-Überladungen der Methoden setTitleTextColor und setSubtitleTextColor hinzugefügt (aosp/867489)

Fehlerkorrekturen

  • Behoben: fontFamily funktionierte nicht vor API 24 (aosp/807054)
  • Behebung eines Fehlers, durch den textFontWeight nicht funktionierte, wenn eine Aktivität von AppCompatActivity ausgeht (aosp/847640)
  • Behebung eines Fehlers, durch den im Pop-up-Fenster des Spinner-Widgets (bei Verwendung des Dialogmodus) nicht die in der fontFamily angegebene Schriftart verwendet wurde (aosp/789994)
  • Fehler behoben, durch den die Hintergrundfarbe der Widgets AppCompatCheckBox und AppCompatRadioButton nicht geändert werden konnte (aosp/825160)
  • Behebung eines Fehlers, durch den AppCompat android: list styles nicht überschrieben hat (aosp/862350)

Version 1.1.0-alpha01

3. Dezember 2018

Neue Funktionen

  • AppCompatTextView unterstützt jetzt zusammengesetzte Drawables vom Typ app:drawableLeftCompat, app:drawableTopCompat, app:drawableRightCompat, app:drawableBottomCompat, app:drawableStartCompat und app:drawableEndCompat sowie zurückportierte Drawable-Typen wie VectorDrawableCompat.

  • Die Standard-Drawables von AppCompatCheckBox und AppCompatRadioButton werden jetzt animiert, wenn sich der Status ändert.

API-Änderungen

  • aosp/740385: ActionBarOverlayLayout implementiert jetzt „NestedScrollingParent2“ und „NestedScrollingParent3“, wodurch die neuesten Funktionen von „Nested Scrolling 3“ unterstützt werden. Wenn ActionBarOverLayLayout.onNestedScroll(View, int, int, int, int) derzeit durch Entwicklercode überschrieben wird, wird es wahrscheinlich nicht mehr aufgerufen und stattdessen sollte ActionBarOverLayLayout.onNestedScroll(View, int, int, int, int, int, int[]) überschrieben werden.

Version 1.0.2

Version 1.0.2

7. November 2018

Version mit Fehlerkorrekturen für core-1.0.1 und appcompat-1.0.2.

Fehlerkorrekturen

  • Ein Fehler wurde behoben, durch den PrecomputedTextCompat bei Verwendung mit RTL-AppCompatTextView abstürzte. b/113070424

Version 1.0.0

Version 1.0.0

7. November 2018

Neue Funktionen