TV-Gerät

  
Bietet Entwicklern Funktionen zum Erstellen und Erstellen von Material Design, damit sie Anwendungen für das Fernsehen entwickeln können
Letzte Aktualisierung Stabile Version Releasekandidat Beta-Ausgabe Alpharelease
4. Oktober 2023 - - - 1.0.0-alpha10

Abhängigkeiten deklarieren

Um Abhängigkeiten von tv-foundation und tv-material hinzuzufügen, müssen Sie Ihrem Projekt das Maven-Repository von Google hinzufügen. Weitere Informationen finden Sie im Maven-Repository von Google.

Fügen Sie der Datei build.gradle für Ihre Anwendung oder Ihr Modul die Abhängigkeiten für die benötigten Artefakte hinzu:

Groovig

dependencies {
    implementation "androidx.tv:tv-foundation:1.0.0-alpha10"
    implementation "androidx.tv:tv-material:1.0.0-alpha10"
}

Kotlin

dependencies {
    implementation("androidx.tv:tv-foundation:1.0.0-alpha10")
    implementation("androidx.tv:tv-material:1.0.0-alpha10")
}

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

Feedback

Dein Feedback hilft uns, Jetpack zu verbessern. Lassen Sie uns wissen, wenn Sie neue Probleme entdecken oder Ideen zur Verbesserung dieser Bibliothek haben. Sehen Sie sich die vorhandenen Probleme in dieser Bibliothek an, bevor Sie eine neue erstellen. Durch Klicken auf die Stern-Schaltfläche können Sie zu einem vorhandenen Problem abstimmen.

Neues Problem erstellen

Weitere Informationen finden Sie in der Dokumentation zum Issue Tracker.

Für dieses Artefakt gibt es keine Versionshinweise.

Version 1.0.0

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 werden veröffentlicht. Version 1.0.0-alpha10 enthält diese Commits.

Neue Funktionen

  • NavigationDrawerItem zur Verwendung in NavigationDrawer und ModalNavigationDrawer eingeführt. (I4b491)
  • Basisprofil zur tv-foundation-Bibliothek hinzufügen. 2b57fd7.
  • Basisprofil zur Mediathek für TV-Material hinzufügen (1711ff5)

API-Änderungen

  • NavigationDrawerScope.doesTabRowHaveFocus wurde in NavigationDrawerScope.hasFocus umbenannt. (I8286b)
  • TabRowScope.isActivated wurde in TabRowScope.hasFocus umbenannt. (Ic4273)

Fehlerkorrekturen

  • Kompatibilität des Karussells mit benachbarten Elementen, die APIs für Fokuswiederherstellung verwenden, wurde korrigiert. (7b2a7a4)
  • Deaktiviert die Scheinanzeige für API_LEVEL unter 28, da diese vom Betriebssystem nicht unterstützt wird. 6d3616f:
  • Behebung eines ANR-Absturzes, der durch eine unsachgemäße Platzierung von Elementen in Lazy Containers beim schnellen Scrollen in umgekehrter Richtung verursacht wurde. (642d65c)
  • Der Hintergrundabstand in der modalen Navigationsleiste wurde entfernt. 69965b2.
  • Behebung des Problems „Scrim in der Navigationsleiste“ so, dass es über dem Hintergrund statt über dem Hintergrund 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 werden veröffentlicht. Version 1.0.0-alpha09 enthält diese Commits.

API-Änderungen

  • ReusableComposition-Schnittstelle zum Verwalten des Lebenszyklus und zur Wiederverwendung von Unterzusammensetzungen wurde hinzugefügt. (I812d1, b/252846775)
  • Fork tv-foundation mit compose-foundation synchronisieren. (I737c3, b/287011882)
  • Die Überlastung von LazyLayout wurde hinzugefügt. Es akzeptiert ein Lambda von LazyLayoutItemProvider und kein einfaches Objekt wie zuvor. Die vorherige Überlastung wurde verworfen. (I42a5a)
  • Füge TvKeyboardAlignment hinzu, damit der Entwickler die Position der Bildschirmtastatur über AndroidImeOptions konfigurieren kann. (Idb772)
  • Füge rememberCarouselState zu „CarouselState“ mit „Saver“ zu „TV Compose-Material“ hinzu. (Id7275)
  • Ändern Sie den Parameter scrimColor: Color in den Parameter scrimBrush:Brush, damit Nutzer Farbverläufe zum Gitter 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 werden veröffentlicht. Version 1.0.0-alpha08 enthält diese Commits.

Neue Funktionen

  • Chipkomponenten für die Funktion „Compose“ für TV-Materialien vorstellen (I86da4)
  • Die Komponente „ListItem“ zu „TV Compose-Material“ hinzufügen. (I3f0b3)
  • Komponente „DenseListItem“ zu „TV Compose-Material“ hinzufügen. (I536bf)

API-Änderungen

  • Öffentliche TV-Material-APIs wurden als experimentell gekennzeichnet. (I632e7)
  • Einführung von TabRowScope, um den Status aus TabRow zusammensetzbare Funktion mit zusammensetzbaren Tabs zu teilen, und umbenannte TabColors-Eigenschaften. (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 werden veröffentlicht. Version 1.0.0-alpha07 enthält diese Commits.

API-Änderungen

  • Die Skalierungsangaben von Komponenten enthalten jetzt „None“, um die Skalierung zu deaktivieren. (I50df5)
  • Unterstützung langer Klicks für TV-Materialoberfläche, Karten und Schaltflächen hinzugefügt. (Id2b89)
  • CarouselItem und CarouselScope wurden entfernt. Inhalte im Vordergrund können mit Modifier.animateEnterExit von AnimatedContentScope auf der Folie animiert werden. (Ic038e)
  • Die Parameter color und contentColor wurden für TV Material Surface zu colors zusammengeführt. (Ie69eb)
  • Einführung von RadioButton zusammensetzbare Funktion in TV-Material. (I08690)
  • Einführung von Switch zusammensetzbare Funktion in TV-Material. (I45e29)
  • Einführung von Checkbox zusammensetzbare Funktion in TV-Material. (I6a45a)
  • Einführung einer nicht interaktiven Oberfläche in TV-Material. (Ic5f85)
  • Machen Sie Hinweise 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 werden veröffentlicht. Version 1.0.0-alpha06 enthält diese Commits.

Neue Funktionen

  • Für das Fernsehen optimierte Material 3-Kartenimplementierungen hinzufügen.
    • Basic Card (I5b701)
    • ClassicCard, CompactCard und WideClassicCard (I70471)
    • StandardCardLayout und WideCardLayout (I33fae)
  • Fügen Sie für das Fernsehen optimierte Material 3-Schaltflächen-Implementierungen hinzu.

API-Änderungen

  • CarouselSlide und slideCount wurden in Carousel in CarouselItem und itemCount umbenannt. (Ie554c)
  • forward und backward ContentTransforms wurden in StartToEnd und EndToStart umbenannt. (Ie554c)

Fehlerkorrekturen

  • Berühre die Taste „Zurück“, wenn der Fokus auf NavigationDrawer liegt. (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 werden veröffentlicht. Version 1.0.0-alpha05 enthält diese Commits.

API-Änderungen

  • Neu in tv-material: die zusammensetzbare Funktion für die seitliche Navigationsleiste. Informationen zur Verwendung dieser zusammensetzbaren Funktion finden Sie in den Beispielen. (I12c08)
  • Einführung von zusammensetzbaren Symbolen in TV Material 3 (I72db9)
  • In tv-material wurde die Funktion „Surface zusammensetzbar“ mit Angaben wie Rand, Schein und Skala eingeführt. Damit lassen sich Komponenten erstellen, die das fokussierte Element auf dem Fernsehbildschirm deutlich hervorheben. (I4a6d8), (Iceea1), (Iee4d4), (I79edf), (Icb376)
  • Ändern Sie CarouselItem zu CarouselSlide, damit er dem Namen des slideCount-Parameters in der Karussell-API (Ic4299) entspricht.

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 werden veröffentlicht. Version 1.0.0-alpha04 enthält diese Commits.

Neue Funktionen

  • Bei verzögerten Zeilen, Spalten und Rastern wird der Drehpunkt bei Bedarf überschrieben, um sicherzustellen, dass das gesamte Element sichtbar ist. (11d7e40)
  • Passen Sie die Farben von Tabs für verschiedene Status an. (21b2925)
  • Das Karussell unterstützt jetzt benutzerdefinierte Animationen für manuelles Vorwärts- und Rückwärtsscrollen. (431494a)

API-Änderungen

  • androidx.tv.material wird in androidx.tv.material3 umbenannt und die Paketstruktur wird unter androidx.tv.material3 vereinfacht. (I6ca52)
  • Der Indikator in der Zeile „Karussell-Anzeige“ ist jetzt eine Anzeigenfläche, die vom Entwickler angepasst werden kann. 268af2a
  • focusableItem wurde in immersiveListItem umbenannt. Nutzer müssen den Modifizierer focusable() oder clickable() zusammen mit immersiveListItem (5dd5078)(b/263061052) manuell hinzufügen.
  • timeToDisplayMillis wurde in der Karussell-Komponente in autoScrollDurationMillis umbenannt. (431494a)
  • CarouselItem darf jetzt nur noch innerhalb von Carousel verwendet werden. (431494a)
  • Im Karussell werden jetzt ContentTransforms als Animationsdefinition anstelle von EnterTransition und ExitTransitions akzeptiert. (431494a)
  • Einführung der PinnableContainer API, die durch Lazy-Listen über eine lokale Kompositionslösung weitergegeben wird, mit der aktuelle Elemente angepinnt werden können. (Ib8881, b/259274257, b/195049010)
  • Attribut „mainAxisItemSpacing“ zu „TvLazyListLayoutInfo“ und „TvLazyGridLayoutInfo“ (I37765) hinzugefügt

Fehlerkorrekturen

  • Aktualisieren Sie die TAB-Zeile, um sicherzustellen, dass die Tab-Anzahl von 0 oder 1 korrekt verarbeitet wird. (I44009), (1c01525), (b/264018028)
  • Behebung eines Absturzes bei der Fokussuche, wenn TvLazyColumn ein leeres TvLazyRow enthält. (e11b4fe), (b/260299091)
  • Der clickable-Modifikator funktioniert jetzt mit ImmersiveList. (5dd5078), (b/263061052)
  • Die Zurück-Taste wird jetzt verarbeitet und zum Verlassen des vorgestellten Karussells verwendet. (84c138c)
  • Das Karussell behält den Fokus nicht bei mehreren schnellen Tastenbetätigungen. (799489f)
  • Das Karussell behält auch den Fokus bei langem Drücken von Tasten. b2cf37e.
  • Ein Absturz wurde behoben, wenn sich die Anzahl der Folien im Karussell ä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 werden 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 Tabzeile hervorgehoben ist.
  • TV-spezifische Indikatoren wie Unterstreichungs- und Pillenindikator sind standardmäßig verfügbar. Beispiele zur Verwendung findest du unter tv-sample.

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 werden veröffentlicht. Version 1.0.0-alpha02 enthält diese Commits.

Fehlerkorrekturen

  • Verbesserte Scrollleistung beim Scrollen durch eine Sammlung von TvLazyRows/TvLazyColumns durch Verkleinern 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 werden veröffentlicht. Version 1.0.0-alpha01 enthält diese Commits.

Neue Funktionen

Die erste Alphaversion enthält frühe Vorabversionen von Komponenten für TV-Anwendungsfälle, darunter:

  • Der Modifikator scrollableWithPivot wird hinzugefügt, damit Container ohne Lazy-Scrolling wie Zeile, Spalte und Raster im Inhalt scrollen können, sodass das fokussierte Element an derselben Position auf dem Fernsehbildschirm bleibt.
  • Die zusammensetzbaren Funktionen TvLazyRow, TvLazyColumn, TvLazyHorizontalGrid und TvLazyVerticalGrid werden hinzugefügt, damit der Scrollcontainer durch den Inhalt scrollt, sodass das fokussierte Element an derselben Position auf dem Fernsehbildschirm bleibt.
  • Es wurde eine zusammensetzbare Funktion für das empfohlene Karussell für das Fernsehen hinzugefügt, mit der Nutzer ein automatisch scrollendes Bannerkarussell erstellen können.
  • Sie können eine zusammensetzbare Funktion aus einer immersiven Liste für Fernseher hinzufügen, mit der Nutzer eine immersive Zeile/Spalte/Raster erstellen können, bei der der Hintergrund je nach ausgewähltem Listenelement geändert wird.

Bekannte Probleme

  • Wird beim Scrollen der Container der Fokus stärker, wird standardmäßig nicht das erste Element hervorgehoben.
  • Wenn du den Fokus auf ein TextField verschiebst, wird nicht immer die Tastatur geöffnet oder es wird möglicherweise verhindert, dass der Fokus auf andere Felder verschoben wird.
  • Vertikales Scrollen in einem LazyColumn, das LazyRows enthält, hat eine schlechte Leistung.