Fernseher
<ph type="x-smartling-placeholder"></ph> androidx.tv.foundation
<ph type="x-smartling-placeholder"></ph> androidx.tv.foundation.lazy.grid
. androidx.tv.foundation.lazy.list
androidx.tv.material3
Letzte Aktualisierung | Stabile Version | Releasekandidat | Beta-Ausgabe | Alpha-Release |
---|---|---|---|---|
21. August 2024 | 1.0.0 | - | – | - |
Abhängigkeiten deklarieren
Wenn Sie Abhängigkeiten von „tv-foundation“ und „tv-material“ hinzufügen möchten, müssen Sie das Maven-Repository von Google zu Ihrem Projekt arbeiten. Maven-Repository von Google lesen .
Fügen Sie der Datei build.gradle
die Abhängigkeiten für die Artefakte hinzu, die Sie benötigen
Ihre App oder Ihr Modul:
Cool
dependencies { implementation "androidx.tv:tv-foundation:1.0.0-alpha11" implementation "androidx.tv:tv-material:1.0.0" }
Kotlin
dependencies { implementation("androidx.tv:tv-foundation:1.0.0-alpha11") implementation("androidx.tv:tv-material:1.0.0") }
Weitere Informationen zu Abhängigkeiten finden Sie unter Build-Abhängigkeiten hinzufügen.
Feedback
Dein Feedback hilft uns, Jetpack zu verbessern. Teilen Sie uns mit, wenn Sie neue Ausgaben entdecken oder zur Verbesserung dieser Bibliothek. In der bestehende Probleme in dieser Bibliothek, bevor Sie eine neue erstellen. So können Sie für ein vorhandenes Problem abstimmen: indem Sie auf die Sternschaltfläche klicken.
Weitere Informationen finden Sie in der Dokumentation zur Problemverfolgung. .
Für dieses Artefakt gibt es keine Versionshinweise.
TV-Material Version 1.0
Version 1.0.0
21. August 2024
androidx.tv:tv-material:1.0.0
wurde veröffentlicht. Version 1.0.0 ist die erste stabile Version von androidx.tv:tv-material
.
Version 1.0.0-rc02
7. August 2024
androidx.tv:tv-material:1.0.0-rc02
wurde veröffentlicht. Version 1.0.0-rc02 enthält diese Commits.
Fehlerkorrekturen
- Das Problem mit der verwackelten Textanimation in der zusammensetzbaren Oberfläche "Oberfläche" wurde behoben. (3163319)
Version 1.0.0-rc01
10. Juli 2024
androidx.tv:tv-material:1.0.0-rc01
wurde 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
wurde veröffentlicht. Version 1.0.0-beta01 enthält diese Commits.
API-Änderungen
ColorScheme
und die zugehörigen Dienstfunktionen sind jetzt stabil. (If34fa)LocalContentColor
ist jetzt stabil (I60ee2)Typography
API ist jetzt stabil (I088d6)- Shapes APIs sind jetzt stabil (I0f5f4).
- Border API jetzt stabil (I69281)
- Glow API ist jetzt stabil (Iea5f1)
- Symbolkomponente ist jetzt stabil (I62c2d).
- Die
LocalTextStyles
API ist jetzt stabil (Iaded8) MaterialTheme
API ist jetzt stabil (I2f541)- Die Textkomponente ist jetzt stabil (Ib9e31)
- Die Komponente „
RadioButton
“ ist jetzt stabil (Ia03c8) - Switch-Komponente ist jetzt stabil (I6cea3)
Checkbox
-Komponenten sind jetzt stabil (I7eafc)- Oberflächenkomponenten sind jetzt stabil (I58758, I04aca)
NonInteractiveSurfaceDefaults
wurde inSurfaceDefaults
undNonInteractiveSurfaceColors
inSurfaceColors
umbenannt (I0812e)- Auf der auswählbaren Oberfläche wird jetzt die Terminologie „Auswählen“ anstelle von „Prüfen“ verwendet, da beide unterschiedliche semantische Bedeutungen haben (I5a206).
NavigationDrawer
undNavigationDrawerScope
sind jetzt stabil (I249c1)- Die Komponente „
NavigationDrawerItem
“ ist jetzt stabil (Id6986). - Tab- und
TabRow
-Komponenten sind jetzt stabil (I92d92) - Die Komponenten
Button
,OutlinedButton
,IconButton
,OutlinedIconButton
undWideButton
sind jetzt stabil (Ib4de8). Card
,ClassicCard
,CompactCard
,WideClassicCard
,StandardCardContainer
undWideCardContainer
-Komponenten sind jetzt stabil (I34390)StandardCardLayout
wurde inStandardCardContainer
undWideCardLayout
inWideCardContainer
umbenannt (I08883)CardContainerDefaults.ImageCard
wurde entfernt undCardDefaults.ContainerGradient
inCardDefaults.ScrimBrush
(I6adfe) umbenannt. Du kannst in deinen KartencontainernCard
anstelle vonCardContainerDefaults.ImageCard
verwenden.ListItem
undDenseListItem
sind jetzt stabil (Idebd9)ListItemDefaults.ListItemShape
,ListItemDefaults.FocusedDisabledBorder
undListItemDefaults.SelectedContainerColorOpacity
sind jetzt privat (I5d533)- Die Parameter und der
ListItem
wurden neu angeordnetListItemDefaults.ListItemElevation
wurde inListItemDefaults.TonalElevation
(Id6841) umbenannt. Der ParameterheadlineContent
wurde an den Anfang der zusammensetzbaren Funktion verschoben. Früher konnten Sie die nachgestellte Lambda-Syntax von Kotlin verwenden, umheadlineContent
zu übergeben. Jetzt müssen Sie die Syntax benannter Parameter verwenden, um dasheadlineContent
bereitzustellen. LocalAbsoluteTonalElevation
ist jetzt intern (Ibfc65)- Die Komponente „
ImmersiveList
“ wurde entfernt. In diesem Beispiel erfahren Sie, wie Sie es selbst erstellen. (Id48da) - TV-Material-Komponenten, für die ein
MutableInteractionSource
in ihrer API offengelegt wird, wurden aktualisiert. Jetzt ist eineMutableInteractionSource
verfügbar, für die Nullwerte zulässig sind, die standardmäßig auf null gesetzt ist. Hier gibt es keine semantischen Änderungen: Wenn „null“ übergeben wird, bedeutet das, dass dasMutableInteractionSource
nicht gezogen werden soll. Es wird bei Bedarf innerhalb der Komponente erstellt. Wenn Sie den Wert auf null ändern, können einige Komponenten niemals einMutableInteractionSource
zuweisen. Andere Komponenten können eine Instanz nur bei Bedarf langsam erstellen, wodurch die Leistung dieser Komponenten verbessert wird. Wenn Sie dieMutableInteractionSource
nicht verwenden, die Sie an diese Komponenten übergeben, empfiehlt es sich, stattdessen null zu übergeben. Es wird auch empfohlen, ähnliche Änderungen an Ihren eigenen Komponenten vorzunehmen. (I309b4, b/298048146) - Der
TextAlign
-Parameter der TV-Text-Komponente ist jetzt nicht null (Ib73b1, b/299490814). - Es wurde ein spezieller Wert ohne Angabe für die Felder
TextAlign
,TextDirection
,Hyphens
undLineBreak
desParagraphTextStyle
eingeführt, der ersetzt werden soll (I4197e, b/299490814).
Änderungen im Verhalten
- Der Standardwert des Parameters
shape
für die nicht interaktiveSurface
wurde zuRectangleShape
(I1b859cb) geändert. - Einige Karussellfunktionen wurden für die Beta-Markteinführung eingestellt, da sich die erforderlichen APIs noch in der Testphase befinden (I0e755d4).
- Beim Ändern von
contentColor
inSurface
wird keine Animation mehr zwischen den Status angezeigt (I436e794f).
Version 1.0.0
Version 1.0.0-alpha11
10. Juli 2024
androidx.tv:tv-foundation:1.0.0-alpha11
wurde veröffentlicht. Version 1.0.0-alpha11 enthält diese Commits.
API-Änderungen
- TV-Lazy-Layouts wurden aus der Bibliothek für TV-Grundlagen eingestellt. In diesem Ticket erfahren Sie, wie Sie weg von den Lazy-Layouts für TV migrieren können. (I0855f, b/332674072)
PlatformImeOptions
ist 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
wurden veröffentlicht. Version 1.0.0-alpha10 enthält diese Commits.
Neue Funktionen
NavigationDrawerItem
wurde eingeführt, der inNavigationDrawer
undModalNavigationDrawer
verwendet werden soll. (I4b491)- Baseline-Profil zur Mediathek der TV-Grundlagen hinzufügen. (2b57fd7)
- Referenzprofil zur Bibliothek für TV-Material hinzufügen (1711ff5)
API-Änderungen
NavigationDrawerScope.doesTabRowHaveFocus
wurde inNavigationDrawerScope.hasFocus
umbenannt. (I8286b)TabRowScope.isActivated
wurde inTabRowScope.hasFocus
umbenannt. (IC4273)
Fehlerkorrekturen
- Die Kompatibilität des Karussells mit benachbarten Elementen, die die APIs zur Fokuswiederherstellung verwenden, wurde korrigiert. (7b2a7a4)
- Deaktivieren Sie die Glow-Anzeige für API_LEVEL unter 28, da dies vom Betriebssystem nicht unterstützt wird. (6d3616f)
- Ein ANR-Absturz wurde behoben, der durch eine falsche Platzierung von Elementen in Lazy-Containern beim schnellen Scrollen in die umgekehrte Richtung verursacht wurde. (642d65c)
- Hintergrundabstände in der modalen Navigationsleiste wurden entfernt. (69965b2)
- Das Scrim-Element in der Navigationsleiste wurde so korrigiert, dass es über dem Hintergrund statt dahinter gezeichnet wird. (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
wurden veröffentlicht. Version 1.0.0-alpha09 enthält diese Commits.
API-Änderungen
ReusableComposition
-Schnittstelle zur Verwaltung des Lebenszyklus und der Wiederverwendung von Unterzusammensetzungen hinzugefügt. (I812d1, b/252846775)- Synchronisiere die TV-Fundament-Abgrenzung mit der „Compose-Foundation“. (I737c3, b/287011882)
- Die Überlastung von
LazyLayout
wurde hinzugefügt und akzeptiert als LambdaLazyLayoutItemProvider
statt eines einfachen Objekts wie zuvor. Die vorherige Überlastung wurde verworfen. (I42a5a) - Füge
TvKeyboardAlignment
hinzu, damit der Entwickler die Position der Bildschirmtastatur überAndroidImeOptions
konfigurieren kann. (Idb772) - Füge
rememberCarouselState
zu „TV Compose Material“ hinzu, umCarouselState
mitSaver
zu speichern. (ID7275) - Der Parameter
scrimColor: Color
wird in den ParameterscrimBrush:Brush
geändert, damit Nutzer dem Gitter Farbverlä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
wurden veröffentlicht. Version 1.0.0-alpha08 enthält diese Commits.
Neue Funktionen
- Stell die Chipkomponenten für „Compose“ für TV-Material vor. (I86da4)
- Füge die Komponente „
ListItem
“ zu „TV Compose-Material“ hinzu. (I3f0b3) - Füge die Komponente „
DenseListItem
“ zu „TV Compose Material“ hinzu. (I536bf)
API-Änderungen
- APIs für öffentliche TV-Materialien wurden als experimentell gekennzeichnet. (I632e7)
TabRowScope
wurde eingeführt, um den Status der zusammensetzbaren FunktionTabRow
mit der zusammensetzbaren Funktion „Tabs“ zu teilen, undTabColors
-Properties wurden 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
wurden veröffentlicht. Version 1.0.0-alpha07 enthält diese Commits.
API-Änderungen
- Die Skalierungshinweise von Komponenten enthalten jetzt „Keine“, um die Skalierung zu deaktivieren. (I50df5)
- Lange Klicks werden jetzt für TV Material Surface, Cards und Schaltflächen unterstützt. (Id2b89)
CarouselItem
undCarouselScope
wurden entfernt. Die Animationen für Inhalte im Vordergrund können auf der Folie mitModifier.animateEnterExit
vonAnimatedContentScope
erstellt werden. (IC038e)- Die Parameter
color
undcontentColor
wurden alscolors
für TV Material Surface zusammengeführt. (Ie69eb) - Die zusammensetzbare Funktion „
RadioButton
“ wurde im Bereich „TV-Material“ eingeführt. (I08690) - Die zusammensetzbare Funktion „
Switch
“ wurde im Bereich „TV-Material“ eingeführt. (I45e29) - Die zusammensetzbare Funktion „
Checkbox
“ wurde im Bereich „TV-Material“ eingeführt. (I6a45a) - Einführung von nicht austauschbaren Oberflächen im TV-Material (Ic5f85)
- Machen Sie Angaben intern. (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
wurden veröffentlicht. Version 1.0.0-alpha06 enthält diese Commits.
Neue Funktionen
- Füge Material 3-Kartenimplementierungen hinzu, die für TV optimiert sind.
- Fügen Sie für das Fernsehen optimierte Implementierungen der Material 3-Schaltfläche hinzu.
API-Änderungen
CarouselSlide
undslideCount
inCarousel
wurden inCarouselItem
unditemCount
umbenannt. (IE554c)forward
undbackward
ContentTransforms
wurden inStartToEnd
undEndToStart
umbenannt. (IE554c)
Fehlerkorrekturen
- Schaltfläche für das hintere Steuerkreuz bedienen, wenn
NavigationDrawer
im Fokus ist. (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
wurden veröffentlicht. Version 1.0.0-alpha05 enthält diese Commits.
API-Änderungen
- Neu zusammensetzbare Navigationsleiste in seitlichem Bereich in
tv-material
. Weitere Informationen zur Verwendung dieser zusammensetzbaren Funktion finden Sie in den Beispielen. (I12c08) - Einführung: zusammensetzbare Symbole in TV-Material 3 (I72db9)
- Neu in
tv-material
zusammensetzbare Oberfläche mit Hinweisen wie "Rahmen", "Glow" und "Scale", mit denen Komponenten erstellt werden können, mit denen das fokussierte Element auf dem Fernsehbildschirm deutlich hervorgehoben wird. (I4a6d8) (Iceea1) (Iee4d4) (I79edf) (Icb376) - Aktualisieren Sie
CarouselItem
aufCarouselSlide
, damit sie demslideCount
-Parameternamen in „Karussell“ entsprechen API (Ic4299)
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
wurden veröffentlicht. Version 1.0.0-alpha04 enthält diese Commits.
Neue Funktionen
- In verzögerten Zeilen, Spalten und Rastern wird der Pivot bei Bedarf überschrieben, damit das gesamte Element sichtbar wird. (11d7e40)
- Anpassung von Tabfarben für verschiedene Status hinzufügen. (21b2925)
- Das Karussell akzeptiert jetzt benutzerdefinierte Animationen für das manuelle Vorwärts- und Rückwärtsscrollen. (431494a)
API-Änderungen
androidx.tv.material
wird inandroidx.tv.material3
umbenannt und die Paketstruktur wird unterandroidx.tv.material3
vereinfacht. (I6ca52)- Der Indikator in der Zeile "Karussell-Anzeiger" ist jetzt eine Anzeigenfläche, die vom Entwickler angepasst werden kann. (268af2a)
focusableItem
wurde inimmersiveListItem
umbenannt. Nutzer müssen den Modifiziererfocusable()
oderclickable()
zusammen mitimmersiveListItem
manuell hinzufügen (5dd5078)(b/263061052).timeToDisplayMillis
wurde in der Karussell-Komponente inautoScrollDurationMillis
umbenannt. (431494a)CarouselItem
kann jetzt nur inCarousel
verwendet werden. (431494a)- Karussell akzeptiert jetzt
ContentTransforms
als Animationsdefinition anstelle vonEnterTransition
undExitTransitions
. (431494a) - Es wurde die
PinnableContainer
API eingeführt, die von Lazy Listen über eine lokale Komposition übertragen wird, mit der aktuelles Element angepinnt werden kann. (Ib8881, b/259274257, b/195049010) - Property
mainAxisItemSpacing
zuTvLazyListLayoutInfo
undTvLazyGridLayoutInfo
hinzugefügt (I37765)
Fehlerkorrekturen
- Aktualisieren Sie die Tab-Zeile, um sicherzustellen, dass die Tab-Anzahl von 0 oder 1 korrekt verarbeitet wird. (I44009), (1c01525), (b/264018028)
- Absturz bei der Fokussuche bei einem leeren
TvLazyRow
inTvLazyColumn
wurde behoben. (e11b4fe), (b/260299091) - Der
clickable
-Modifikator funktioniert jetzt auch mitImmersiveList
. (5dd5078), (b/263061052) - Die Taste „Zurück“ wird jetzt verwendet, um das „Empfohlene Karussell“ zu beenden. (84c138c)
- Das Karussell verliert den Fokus nicht auf mehrere schnelle Tastenbetätigungen. (799489f)
- Das Karussell verliert den Fokus nicht auf lange Tastendrücke. (b2cf37e)
- Abstürze beim Ändern der Anzahl der Folien im Karussell wurden behoben. (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
wurden veröffentlicht. Version 1.0.0-alpha03 enthält diese Commits.
Neue Funktionen
TabRow
ist jetzt als experimentelle API verfügbar, mit der Nutzer ihren Apps obere Navigationsleisten hinzufügen können. Im Allgemeinen erwarten TV-Geräte, dass Tabs geladen werden, wenn der Tab-Titel in der Tab-Zeile hervorgehoben ist.- TV-spezifische Anzeigen wie die Unterstreichungsanzeige und die Pillenanzeige sind standardmäßig enthalten. Beispiele für die Verwendung finden Sie unter TV-Beispiele.
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
wurden veröffentlicht. Version 1.0.0-alpha02 enthält diese Commits.
Fehlerkorrekturen
- Verbesserte Scrollleistung beim Scrollen durch eine Sammlung von
TvLazyRows/TvLazyColumns
durch Verkleinerung des Fokussuchbereichs (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
wurden veröffentlicht. Version 1.0.0-alpha01 enthält diese Commits.
Neue Funktionen
Die erste Alphaversion umfasst erste Vorschauimplementierungen von Komponenten für TV-Anwendungsfälle, darunter:
- Der Modifikator
scrollableWithPivot
wurde hinzugefügt, damit Container ohne Lazy Scrolling wie Zeile, Spalte und Raster durch den scrollbaren Container scrollen können, sodass das im Fokus befindliche Element an derselben Position auf dem Fernsehbildschirm bleibt. - Sie können die zusammensetzbaren Funktionen
TvLazyRow
,TvLazyColumn
,TvLazyHorizontalGrid
undTvLazyVerticalGrid
hinzufügen, damit der scrollbare Container durch den Inhalt scrollt, sodass das fokussierte Element auf dem Fernsehbildschirm an derselben Position bleibt. - Hinzufügen einer zusammensetzbaren Funktion für vorgestellte Karussells für TV-Anzeigen, mit der Nutzer ein Bannerkarussell mit automatischem Scrollen erstellen können
- Hinzufügen einer immersiven Liste für TV-Geräte, mit der Nutzer immersive Zeilen/Spalten/Raster erstellen können, bei denen der Hintergrund je nach ausgewähltem Listenelement geändert wird.
Bekannte Probleme
- Wenn der Scroll-Container stärker fokussiert wird, ist das erste Element nicht standardmäßig fokussiert.
- Wenn Sie den Fokus auf ein
TextField
-Objekt fokussieren, wird nicht immer die Tastatur geöffnet oder der Fokus kann nicht auf andere Felder verschoben werden. - Das vertikale Scrollen in einer
LazyColumn
, dieLazyRows
enthält, hat eine schlechte Leistung.