tv
| Letzte Aktualisierung | Stabile Release | Releasekandidat | Beta-Release | Alpha-Release |
|---|---|---|---|---|
| 11. März 2026 | 1.0.1 | - | 1.1.0-beta01 | - |
Abhängigkeiten deklarieren
Wenn Sie Abhängigkeiten von tv-foundation und tv-material 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 benötigten Artefakte hinzu:
Cool
dependencies { implementation "androidx.tv:tv-foundation:1.0.0-beta01" implementation "androidx.tv:tv-material:1.1.0-beta01" }
Kotlin
dependencies { implementation("androidx.tv:tv-foundation:1.0.0-beta01") implementation("androidx.tv:tv-material:1.1.0-beta01") }
Weitere Informationen zu Abhängigkeiten finden Sie unter Build-Abhängigkeiten hinzufügen.
Feedback
Ihr Feedback hilft uns, Jetpack zu verbessern. Wenn Sie neue Probleme entdecken oder Ideen zur Verbesserung dieser Bibliothek haben, lassen Sie es uns wissen. Bevor Sie ein neues Problem erstellen, sollten Sie sich jedoch die bereits gemeldeten Probleme in dieser Bibliothek ansehen. Wenn Sie sich einer Problemmeldung anschließen möchten, klicken Sie auf die Schaltfläche mit dem Stern.
Weitere Informationen finden Sie in der Dokumentation zum Issue Tracker.
Für dieses Artefakt gibt es keine Versionshinweise.
TV-Material Version 1.1
Version 1.1.0-beta01
11. März 2026
androidx.tv:tv-material:1.1.0-beta01 ist veröffentlicht. Version 1.1.0-beta01 enthält diese Commits.
API-Änderungen
- Für Projekte, die mit Kotlin 2.0 veröffentlicht wurden, ist KGP 2.0.0 oder höher erforderlich (Idb6b5, b/344563182).
Externer Beitrag
- Der
androidx.compose.ui.graphics.NativePaint-Typalias ist veraltet. Verwenden Sie stattdessen direktandroid.graphics.Paint(I6303c, b/477394763). - Ersetzen Sie die Erweiterung
Paint.asFrameworkPaint()durchPaint.nativePaint, um zu vermeiden, dass der Plattformtyp übertypealiasimcommonMain-Quellset verfügbar gemacht wird (I6303c, b/477394763).
Version 1.1.0-alpha01
15. Januar 2025
androidx.tv:tv-material:1.1.0-alpha01 ist veröffentlicht. Version 1.1.0-alpha01 enthält diese Commits.
API-Änderungen
- Ändern Sie
FocusEnterExitScope.cancelFocus()zucancelFocusChange()(I89959). FocusProperties.enterundFocusProperties.exitwurden durchonEnterundonExitersetzt. Dabei wird ein Empfängerbereich anstelle des ParametersFocusDirectionverwendet. (I6e667)
Fehlerkorrekturen
CompositingStrategy.OffScreenwurde von „Surface“ zu „Text“ verschoben, um das Ruckeln des Textes beim Skalieren zu beheben. (I92b15f17)- Die fehlerhafte Fokusverwaltung im Karussell wurde korrigiert. (Ie508b721375)
- Die Implementierung von Oberflächen (nicht interaktiv) ist im Vergleich zu interaktiven Oberflächen einfacher. (I7ea545150)
Tv-Material Version 1.0
Version 1.0.1
16. Juli 2025
androidx.tv:tv-material:1.0.1 ist veröffentlicht. Version 1.0.1 enthält diese Commits.
Fehlerkorrekturen
- Die Höhe des
NavigationDrawerItemwurde an die Spezifikationen angepasst. (cf9a3ce) - Die Konfiguration der Compositing-Strategie wurde von der Surface-komponierbaren Funktion zur Text-komponierbaren Funktion verschoben. Damit wird der Fehler behoben, bei dem Exoplayer auf Surface-Composables in niedrigeren Android-API-Versionen nicht gerendert wurde. (9858ffb)
Version 1.0.0
21. August 2024
androidx.tv:tv-material:1.0.0 ist veröffentlicht. Version 1.0.0 ist das erste stabile Release von androidx.tv:tv-material.
Version 1.0.0-rc02
7. August 2024
androidx.tv:tv-material:1.0.0-rc02 ist veröffentlicht. Version 1.0.0-rc02 enthält diese Commits.
Fehlerkorrekturen
- Die Textanimation im Surface-Composable war ruckartig. Dieses Problem wurde behoben. (3163319)
Version 1.0.0-rc01
10. Juli 2024
androidx.tv:tv-material:1.0.0-rc01 ist veröffentlicht. Version 1.0.0-rc01 enthält diese Commits.
Version 1.0.0-beta01
1. Mai 2024
androidx.tv:tv-material:1.0.0-beta01 ist veröffentlicht. Version 1.0.0-beta01 enthält diese Commits.
API-Änderungen
ColorSchemeund die zugehörigen Dienstprogrammfunktionen sind jetzt stabil. (If34fa)LocalContentColorist jetzt stabil (I60ee2)- Die
TypographyAPI ist jetzt stabil (I088d6). - Shapes APIs sind jetzt stabil (I0f5f4)
- Die Border API ist jetzt stabil (I69281)
- Die Glow API ist jetzt stabil (Iea5f1)
- Die Symbolkomponente ist jetzt stabil (I62c2d).
- Die
LocalTextStylesAPI ist jetzt stabil (Iaded8). - Die
MaterialThemeAPI ist jetzt stabil (I2f541). - Die Textkomponente ist jetzt stabil (Ib9e31)
- Die
RadioButton-Komponente ist jetzt stabil (Ia03c8). - Die Schalterkomponente ist jetzt stabil (I6cea3).
Checkbox-Komponenten sind jetzt stabil (I7eafc)- Oberflächenkomponenten sind jetzt stabil (I58758, I04aca)
NonInteractiveSurfaceDefaultswurde inSurfaceDefaultsundNonInteractiveSurfaceColorsinSurfaceColorsumbenannt (I0812e)- Bei der Auswahl von Anzeigenumgebungen wird jetzt der Begriff „auswählen“ anstelle von „aktivieren“ verwendet, da die beiden Begriffe unterschiedliche Bedeutungen haben (I5a206).
NavigationDrawerundNavigationDrawerScopesind jetzt stabil (I249c1)- Die Komponente
NavigationDrawerItemist jetzt stabil (Id6986) - Tab- und
TabRow-Komponenten sind jetzt stabil (I92d92) - Die Komponenten
Button,OutlinedButton,IconButton,OutlinedIconButtonundWideButtonsind jetzt stabil (Ib4de8). - Die Komponenten
Card,ClassicCard,CompactCard,WideClassicCard,StandardCardContainerundWideCardContainersind jetzt stabil (I34390). StandardCardLayoutwurde inStandardCardContainerundWideCardLayoutinWideCardContainerumbenannt (I08883)CardContainerDefaults.ImageCardwurde entfernt undCardDefaults.ContainerGradientwurde inCardDefaults.ScrimBrushumbenannt (I6adfe). Sie könnenCardanstelle vonCardContainerDefaults.ImageCardin Ihren Kartencontainern verwenden.ListItemundDenseListItemsind jetzt stabil (Idebd9).ListItemDefaults.ListItemShape,ListItemDefaults.FocusedDisabledBorderundListItemDefaults.SelectedContainerColorOpacitysind jetzt privat (I5d533)- Die Parameter von
ListItemwurden neu angeordnet undListItemDefaults.ListItemElevationwurde inListItemDefaults.TonalElevationumbenannt (Id6841). Der ParameterheadlineContentwurde an den Anfang des Composables verschoben. Bisher konnten Sie die Trailing-Lambda-Syntax von Kotlin verwenden, umheadlineContentzu übergeben. Jetzt müssen Sie die Syntax für benannte Parameter verwenden, umheadlineContentanzugeben. LocalAbsoluteTonalElevationist jetzt intern (Ibfc65)- Die Komponente
ImmersiveListwurde entfernt. In diesem Beispiel erfahren Sie, wie Sie eine solche Funktion selbst erstellen können. (Id48da) - tv-material-Komponenten, die in ihrer API ein
MutableInteractionSourceverfügbar machen, wurden aktualisiert, sodass sie jetzt ein nullableMutableInteractionSourceverfügbar machen, das standardmäßig auf null gesetzt ist. Es gibt hier keine semantischen Änderungen: Wenn Sie „null“ übergeben, möchten Sie dasMutableInteractionSourcenicht hochziehen. Es wird bei Bedarf innerhalb der Komponente erstellt. Wenn Sie den Wert auf „null“ ändern, kann es sein, dass für einige Komponenten nie einMutableInteractionSourcezugewiesen wird. Außerdem kann es sein, dass für andere Komponenten nur dann eine Instanz erstellt wird, wenn sie benötigt wird. Das verbessert die Leistung dieser Komponenten. Wenn Sie dieMutableInteractionSource, die Sie an diese Komponenten übergeben, nicht verwenden, sollten Sie stattdessen „null“ übergeben. Es wird auch empfohlen, ähnliche Änderungen in Ihren eigenen Komponenten vorzunehmen. (I309b4, b/298048146) - Der Parameter
TextAlignder Komponente „TV Text“ ist jetzt nicht mehr null (Ib73b1, b/299490814) - Für die Felder
TextAlign,TextDirection,HyphensundLineBreakvonParagraphTextStylewurde ein spezieller Wert „Nicht angegeben“ eingeführt, um (I4197e, b/299490814) zu ersetzen.
Geändertes Verhalten
- Der Standardwert des Parameters
shapefür nicht interaktiveSurfacewurde inRectangleShapegeändert (I1b859cb) - Einige Karussellfunktionen wurden für die Betaversion entfernt, da die erforderlichen APIs experimentell sind (I0e755d4).
- Änderungen bei
contentColorinSurfacewerden nicht mehr zwischen den Status animiert (I436e794f)
Version 1.0.0
Version 1.0.0-beta01
11. März 2026
androidx.tv:tv-foundation:1.0.0-beta01 ist veröffentlicht. Version 1.0.0-beta01 enthält diese Commits.
API-Änderungen
- Für Projekte, die mit Kotlin 2.0 veröffentlicht wurden, ist KGP 2.0.0 oder höher erforderlich (Idb6b5, b/344563182).
Version 1.0.0-alpha12
15. Januar 2025
androidx.tv:tv-foundation:1.0.0-alpha12 ist veröffentlicht. Version 1.0.0-alpha12 enthält diese Commits.
API-Änderungen
- Lazy Layouts aus „tv-foundation“ entfernen Informationen zur Migration von Lazy Layouts der tv-foundation finden Sie in den Versionshinweisen zu 1.0.0-alpha11. (I2fdd3, b/358913893)
Version 1.0.0-alpha11
10. Juli 2024
androidx.tv:tv-foundation:1.0.0-alpha11 ist veröffentlicht. Version 1.0.0-alpha11 enthält diese Commits.
API-Änderungen
- TvLazyLayouts wurden aus der tv-foundation-Bibliothek entfernt. In diesem Ticket erfahren Sie, wie Sie die Migration von den Lazy Layouts für TV durchführen. (I0855f, b/332674072)
PlatformImeOptionsist jetzt eine konkrete Klasse anstelle einer Schnittstelle. (If40a4)
Version 1.0.0-alpha10
4. Oktober 2023
androidx.tv:tv-foundation:1.0.0-alpha10 und androidx.tv:tv-material:1.0.0-alpha10 sind veröffentlicht. Version 1.0.0-alpha10 enthält diese Commits.
Neue Funktionen
NavigationDrawerItemwurde eingeführt und kann inNavigationDrawerundModalNavigationDrawerverwendet werden. (I4b491)- Fügen Sie der tv-foundation-Bibliothek ein Baseline-Profil hinzu. (2b57fd7)
- Füge der tv-material-Bibliothek ein Baseline-Profil hinzu. (1711ff5)
API-Änderungen
NavigationDrawerScope.doesTabRowHaveFocuswurde inNavigationDrawerScope.hasFocusumbenannt. (I8286b)TabRowScope.isActivatedwurde inTabRowScope.hasFocusumbenannt. (Ic4273)
Fehlerkorrekturen
- Die Kompatibilität von Karussells mit angrenzenden Elementen, die Focus Restorer APIs verwenden, wurde behoben. (7b2a7a4)
- Deaktivieren Sie die Glow-Anzeige für API_LEVEL unter 28, da sie vom Betriebssystem nicht unterstützt wird. (6d3616f)
- ANR-Absturz behoben, der durch eine falsche Platzierung von Elementen in Lazy-Containern beim schnellen Scrollen in umgekehrter Richtung verursacht wurde. (642d65c)
- Der Hintergrund-Abstand im modalen Navigationsbereich wurde entfernt. (69965b2)
- Das Scrim im Navigationsmenü wird jetzt über dem Hintergrundinhalt und nicht dahinter gezeichnet. (d4bbefb)
Version 1.0.0-alpha09
6. September 2023
androidx.tv:tv-foundation:1.0.0-alpha09 und androidx.tv:tv-material:1.0.0-alpha09 sind veröffentlicht. Version 1.0.0-alpha09 enthält diese Commits.
API-Änderungen
- Die
ReusableComposition-Schnittstelle wurde hinzugefügt, um den Lebenszyklus und die Wiederverwendung von Unterkompositionen zu verwalten. (I812d1, b/252846775) - Synchronisiere den tv-foundation-Fork mit compose-foundation. (I737c3, b/287011882)
- Überladung von
LazyLayouthinzugefügt. Sie akzeptiert jetzt eine Lambda-Funktion vonLazyLayoutItemProvider, nicht mehr ein einfaches Objekt wie zuvor. Die vorherige Überladung ist veraltet. (I42a5a) - Fügen Sie
TvKeyboardAlignmenthinzu, damit der Entwickler die Position der Bildschirmtastatur über dieAndroidImeOptionskonfigurieren kann. (Idb772) - Füge
rememberCarouselStatehinzu, umCarouselStatemitSaverin TV Compose Material zu speichern. (Id7275) - Der
scrimColor: Color-Parameter wurde in denscrimBrush:Brush-Parameter geändert, damit Nutzer dem Scrim Verläufe hinzufügen können. (I254d4)
Version 1.0.0-alpha08
26. Juli 2023
androidx.tv:tv-foundation:1.0.0-alpha08 und androidx.tv:tv-material:1.0.0-alpha08 sind veröffentlicht. Version 1.0.0-alpha08 enthält diese Commits.
Neue Funktionen
- Einführung von Chip-Komponenten für Compose for TV-Material. (I86da4)
- Fügen Sie dem TV Compose-Material die
ListItem-Komponente hinzu. (I3f0b3) - Fügen Sie dem TV Compose-Material die
DenseListItem-Komponente hinzu. (I536bf)
API-Änderungen
- Öffentliche APIs für TV-Material als „Experimentell“ markiert. (I632e7)
TabRowScopewurde eingeführt, um den Status von der zusammensetzbarenTabRowmit der zusammensetzbaren „Tab“ zu teilen. Außerdem wurden dieTabColors-Attribute umbenannt. (Ief587)
Version 1.0.0-alpha07
7. Juni 2023
androidx.tv:tv-foundation:1.0.0-alpha07 und androidx.tv:tv-material:1.0.0-alpha07 sind veröffentlicht. Version 1.0.0-alpha07 enthält diese Commits.
API-Änderungen
- Die Skalierungsangaben für Komponenten enthalten jetzt „Keine“, um die Skalierung zu deaktivieren. (I50df5)
- Unterstützung für langes Klicken auf der Oberfläche „TV-Material“, Karten und Schaltflächen hinzugefügt. (Id2b89)
CarouselItemundCarouselScopewurden entfernt. Die Animation von Vordergrundinhalten auf der Folie kann mitModifier.animateEnterExitausAnimatedContentScopeerreicht werden. (Ic038e)- Die Parameter
colorundcontentColorwurden für die Oberfläche „TV Material“ alscolorszusammengeführt. (Ie69eb) - Das
RadioButton-Composable wurde in TV Material eingeführt. (I08690) - Das
Switch-Composable wurde in TV Material eingeführt. (I45e29) - Das
Checkbox-Composable wurde in TV Material eingeführt. (I6a45a) - Nicht interaktive Oberfläche in TV-Material eingeführt. (Ic5f85)
- Hinweise intern machen (Ibff82)
Version 1.0.0-alpha06
19. April 2023
androidx.tv:tv-foundation:1.0.0-alpha06 und androidx.tv:tv-material:1.0.0-alpha06 sind veröffentlicht. Version 1.0.0-alpha06 enthält diese Commits.
Neue Funktionen
- Material 3-Kartenimplementierungen hinzugefügt, die für Fernseher optimiert sind.
- Material 3-Schaltflächenimplementierungen hinzufügen, die für die TV-Wiedergabe optimiert sind.
API-Änderungen
CarouselSlideundslideCountinCarouselwurden inCarouselItemunditemCountumbenannt. (Ie554c)forwardundbackwardContentTransformswurden inStartToEndundEndToStartumbenannt. (Ie554c)
Fehlerkorrekturen
- Die Taste „Zurück“ auf dem Steuerkreuz wird verarbeitet, wenn der Fokus auf
NavigationDrawerliegt. (d654f4)
Version 1.0.0-alpha05
22. März 2023
androidx.tv:tv-foundation:1.0.0-alpha05 und androidx.tv:tv-material:1.0.0-alpha05 sind veröffentlicht. Version 1.0.0-alpha05 enthält diese Commits.
API-Änderungen
- Das Composable „Side Navigation Drawer“ wurde in
tv-materialeingeführt. Informationen zur Verwendung dieses Composables finden Sie in den Beispielen. (I12c08) - Einführung der zusammensetzbaren Funktion „Icon“ in TV Material 3 (I72db9)
- Wir stellen die Surface-Composable-Funktion für
tv-materialvor, mit Hinweisen wie „Border“ (Rahmen), „Glow“ (Leuchten) und „Scale“ (Skalieren), mit denen Komponenten erstellt werden können, die das fokussierte Element auf dem Fernsehbildschirm deutlich hervorheben. (I4a6d8), (Iceea1), (Iee4d4), (I79edf), (Icb376) - Aktualisiere
CarouselItemzuCarouselSlide, damit derslideCount-Parametername in der „Carousel“-API (Ic4299) übereinstimmt.
Version 1.0.0-alpha04
8. Februar 2023
androidx.tv:tv-foundation:1.0.0-alpha04 und androidx.tv:tv-material:1.0.0-alpha04 sind veröffentlicht. Version 1.0.0-alpha04 enthält diese Commits.
Neue Funktionen
- In verzögert geladenen Zeilen, Spalten und Tabellen wird der Pivot bei Bedarf überschrieben, damit das gesamte Element angezeigt wird. (11d7e40)
- Es ist jetzt möglich, Tabfarben in verschiedenen Status anzupassen. (21b2925)
- Das Karussell unterstützt jetzt benutzerdefinierte Animationen für das manuelle Vorwärts- und Rückwärtsscrollen. (431494a)
API-Änderungen
androidx.tv.materialwurde inandroidx.tv.material3umbenannt und die Paketstruktur unterandroidx.tv.material3wurde vereinfacht. (I6ca52)- Der Indikator in der Zeile „Karussell-Indikator“ ist jetzt ein Slot, der vom Entwickler angepasst werden kann. (268af2a)
focusableItemwurde inimmersiveListItemumbenannt. Nutzer müssen den Modifikatorfocusable()oderclickable()zusammen mitimmersiveListItemmanuell hinzufügen (5dd5078)(b/263061052).timeToDisplayMilliswurde in der Karussellkomponente inautoScrollDurationMillisumbenannt. (431494a)CarouselItemist jetzt auf die Verwendung inCarouselbeschränkt. (431494a)- Für das Karussell wird jetzt
ContentTransformsals Animationsdefinition anstelle vonEnterTransitionundExitTransitionsakzeptiert. (431494a) - Die
PinnableContainer-API wurde eingeführt, die über eine Kompositionslokale von Lazy Lists weitergegeben wird und mit der das aktuelle Element angepinnt werden kann. (Ib8881, b/259274257, b/195049010) - Die Property
mainAxisItemSpacingwurdeTvLazyListLayoutInfoundTvLazyGridLayoutInfohinzugefügt (I37765).
Fehlerkorrekturen
- Aktualisieren Sie die Tab-Zeile, damit sie die Tab-Anzahl 0 oder 1 korrekt verarbeitet. (I44009), (1c01525), (b/264018028)
- Es wurde ein Fehler behoben, der auftrat, wenn
TvLazyColumneine leereTvLazyRowenthielt. (e11b4fe), (b/260299091) - Der Modifikator
clickablefunktioniert jetzt mitImmersiveList. (5dd5078), (b/263061052) - Die Zurück-Taste wird jetzt verarbeitet und zum Beenden des Karussells mit vorgestellten Inhalten verwendet. (84c138c)
- Das Karussell verliert bei mehreren schnellen Tastendrücken nicht den Fokus. (799489f)
- Das Karussell verliert bei langem Drücken von Tasten nicht den Fokus. (b2cf37e)
- Es wurde ein Problem behoben, das zu Abstürzen führte, wenn sich die Anzahl der Karussellfolien änderte. (b261247)
Version 1.0.0-alpha03
7. Dezember 2022
androidx.tv:tv-foundation:1.0.0-alpha03 und androidx.tv:tv-material:1.0.0-alpha03 sind veröffentlicht. Version 1.0.0-alpha03 enthält diese Commits.
Neue Funktionen
TabRowist jetzt als experimentelle API verfügbar, mit der Nutzer ihren Apps obere Navigationsleisten hinzufügen können. Im Allgemeinen wird von TV-Geräten erwartet, dass Tabs geladen werden, wenn der Tabtitel in der Tabzeile ausgewählt ist.- TV-spezifische Indikatoren wie der Unterstreichungsindikator und der Pill-Indikator sind sofort verfügbar. Beispiele für die Verwendung finden Sie unter tv-samples.
Version 1.0.0-alpha02
9. November 2022
androidx.tv:tv-foundation:1.0.0-alpha02 und androidx.tv:tv-material:1.0.0-alpha02 sind veröffentlicht. Version 1.0.0-alpha02 enthält diese Commits.
Fehlerkorrekturen
- Die Scrollleistung beim Scrollen durch eine Sammlung von
TvLazyRows/TvLazyColumnswurde verbessert, indem der Fokus-Suchbereich verkleinert wurde.(I723a3)
Version 1.0.0-alpha01
5. Oktober 2022
androidx.tv:tv-foundation:1.0.0-alpha01 und androidx.tv:tv-material:1.0.0-alpha01 sind veröffentlicht. Version 1.0.0-alpha01 enthält diese Commits.
Neue Funktionen
Die erste Alphaversion enthält frühe Vorschauimplementierungen von Komponenten für TV-Anwendungsfälle, darunter:
- Der Modifikator
scrollableWithPivotwurde hinzugefügt, damit in Containern, die nicht verzögert gescrollt werden, z. B. Row, Column und Grid, der Inhalt so gescrollt wird, dass das fokussierte Element an derselben Position auf dem Fernsehbildschirm bleibt. - Durch Hinzufügen der Composables
TvLazyRow,TvLazyColumn,TvLazyHorizontalGridundTvLazyVerticalGridwird der Inhalt des Scrollcontainers so gescrollt, dass das fokussierte Element an derselben Position auf dem Fernsehbildschirm bleibt. - Es wurde eine zusammensetzbare Funktion für das Featured Carousel für Fernseher hinzugefügt, mit der Nutzer ein automatisch scrollendes Bannerkarussell erstellen können.
- Hinzufügen der zusammensetzbaren Funktion „Immersive List“ für TV, mit der Nutzer eine immersive Zeile, Spalte oder ein immersives Raster erstellen können, bei dem sich der Hintergrund basierend auf dem fokussierten Listenelement ändert.
Bekannte Probleme
- Wenn ein Scrollcontainer den Fokus erhält, wird das erste Element nicht standardmäßig fokussiert.
- Wenn Sie sich auf ein
TextFieldkonzentrieren, wird nicht immer die Tastatur geöffnet. Außerdem kann es sein, dass der Fokus nicht auf andere Felder verschoben wird. - Das vertikale Scrollen in einem
LazyColumnmitLazyRowsist nicht flüssig.