tv

  
Offre agli sviluppatori le funzionalità di Compose e Material Design per scrivere applicazioni per la TV
Aggiornamento più recente Release stabile Candidato di rilascio Versione beta Versione alpha
4 ottobre 2023 - - - 1.0.0-alpha10

Dichiarazione delle dipendenze

Per aggiungere dipendenze da tv-foundation e tv-material, devi aggiungere il Repository Maven di Google al tuo progetto. Per ulteriori informazioni, consulta il Repository Maven di Google.

Aggiungi le dipendenze per gli artefatti necessari nel file build.gradle per l'app o il modulo:

Trendy

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")
}

Per ulteriori informazioni sulle dipendenze, vedi Aggiungere dipendenze delle build.

Feedback

Il tuo feedback ci aiuta a migliorare Jetpack. Contattaci se scopri nuovi problemi o hai idee per migliorare la libreria. Dai un'occhiata ai problemi esistenti in questa libreria prima di crearne uno nuovo. Puoi aggiungere il tuo voto a un problema esistente facendo clic sul pulsante a forma di stella.

Crea un nuovo problema

Per ulteriori informazioni, consulta la documentazione di Issue Tracker.

Non sono presenti note di rilascio per questo elemento.

Versione 1.0.0

Versione 1.0.0-alpha10

4 ottobre 2023

androidx.tv:tv-foundation:1.0.0-alpha10 e androidx.tv:tv-material:1.0.0-alpha10 vengono rilasciati. La versione 1.0.0-alpha10 contiene questi commit.

Nuove funzionalità

  • È stato introdotto NavigationDrawerItem da utilizzare all'interno di NavigationDrawer e ModalNavigationDrawer. (I4b491)
  • Aggiungi il profilo di riferimento alla raccolta TV-foundation. (2b57fd7)
  • Aggiungi il profilo di riferimento alla raccolta di materiali per la TV. (1711ff5)

Modifiche alle API

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

Correzioni di bug

  • Correggi la compatibilità del carosello con gli elementi adiacenti che utilizzano le API di ripristino dello stato attivo. (7b2a7a4)
  • Disattiva l'indicazione del bagliore per API_LEVEL inferiore a 28 poiché non è supportato dal sistema operativo. (6d3616f)
  • È stato risolto l'arresto anomalo ANR causato dal posizionamento non corretto degli elementi nei contenitori lenti quando si scorreva velocemente in direzione inversa. (642d65c)
  • Rimossa la spaziatura interna dello sfondo nel riquadro a scomparsa della navigazione modale. (69965b2)
  • Correggi lo schermo nel riquadro di navigazione a scomparsa in modo che venga tracciato sopra i contenuti di sfondo anziché dietro. (d4bbefb)

Versione 1.0.0-alpha09

6 settembre 2023

androidx.tv:tv-foundation:1.0.0-alpha09 e androidx.tv:tv-material:1.0.0-alpha09 vengono rilasciati. La versione 1.0.0-alpha09 contiene questi commit.

Modifiche alle API

  • Aggiungi l'interfaccia ReusableComposition per la gestione del ciclo di vita e il riutilizzo delle sottocomposizioni. (I812d1, b/252846775)
  • Sincronizza il diaframma di base della TV con i fondamenti di scrittura. (I737c3, b/287011882)
  • Sovraccarico di LazyLayout aggiunto. Accetta una funzione lambda di LazyLayoutItemProvider, non un oggetto semplice come prima. L'overload precedente è deprecato. (I42a5a)
  • Aggiungi TvKeyboardAlignment per consentire allo sviluppatore di configurare la posizione della tastiera sullo schermo tramite AndroidImeOptions. (Idb772)
  • Aggiungi rememberCarouselState per ricordare CarouselState con Saver al materiale di composizione della TV. (Id7275)
  • Modifica del parametro scrimColor: Color in parametro scrimBrush:Brush per consentire agli utenti di aggiungere gradienti allo scrim. (I254d4)

Versione 1.0.0-alpha08

26 luglio 2023

androidx.tv:tv-foundation:1.0.0-alpha08 e androidx.tv:tv-material:1.0.0-alpha08 vengono rilasciati. La versione 1.0.0-alpha08 contiene questi commit.

Nuove funzionalità

  • Illustra i componenti chip di Compose per il materiale TV. (I86da4)
  • Aggiungi il componente ListItem al materiale di composizione della TV. (I3f0b3)
  • Aggiungi DenseListItemcomponente al materiale di composizione TV. (I536bf)

Modifiche alle API

  • Le API pubbliche tv-material sono state contrassegnate come sperimentali. (I632e7)
  • È stato introdotto TabRowScope per condividere lo stato di TabRow componibile con le proprietà TabColors componibili e rinominate. (Ief587)

Versione 1.0.0-alpha07

7 giugno 2023

androidx.tv:tv-foundation:1.0.0-alpha07 e androidx.tv:tv-material:1.0.0-alpha07 vengono rilasciati. La versione 1.0.0-alpha07 contiene questi commit.

Modifiche alle API

  • Le indicazioni di scala dei componenti ora includono Nessuno per disabilitare la scalabilità. (I50df5)
  • Aggiunto il supporto per clic prolungato per superficie TV, schede e pulsanti. (Id2b89)
  • CarouselItem e CarouselScope sono stati rimossi. Puoi ottenere l'animazione dei contenuti in primo piano nella slide utilizzando Modifier.animateEnterExit di AnimatedContentScope. (Ic038e)
  • Parametri color e contentColor uniti come colors per TV Material Surface. (Ie69eb)
  • Introdotto RadioButton componibile in TV Material. (I08690)
  • Introdotto Switch componibile in TV Material. (I45e29)
  • Introdotto Checkbox componibile in TV Material. (I6a45a)
  • Introdotta una superficie non interattiva nel materiale TV. (Ic5f85)
  • Imposta le indicazioni come interne. (Ibff82)

Versione 1.0.0-alpha06

19 aprile 2023

androidx.tv:tv-foundation:1.0.0-alpha06 e androidx.tv:tv-material:1.0.0-alpha06 vengono rilasciati. La versione 1.0.0-alpha06 contiene questi commit.

Nuove funzionalità

  • Aggiungi implementazioni di schede Material 3 ottimizzate per la TV.
    • Scheda di base (I5b701)
    • ClassicCard, CompactCard e WideClassicCard (I70471)
    • StandardCardLayout e WideCardLayout (I33fae)
  • Aggiungi implementazioni dei pulsanti Material 3 ottimizzate per la TV.

Modifiche alle API

  • CarouselSlide e slideCount in Carousel sono stati rinominati CarouselItem e itemCount. (Ie554c)
  • forward e backward ContentTransforms rinominati in StartToEnd e EndToStart. (Ie554c)

Correzioni di bug

  • Tieni premuto il pulsante Indietro del D-pad quando è attivo NavigationDrawer. (d654f4)

Versione 1.0.0-alpha05

22 marzo 2023

androidx.tv:tv-foundation:1.0.0-alpha05 e androidx.tv:tv-material:1.0.0-alpha05 vengono rilasciati. La versione 1.0.0-alpha05 contiene questi commit.

Modifiche alle API

  • Ti presentiamo il riquadro di navigazione laterale a scomparsa componibile in tv-material. Per scoprire come utilizzare questa componibile, consulta gli esempi. (I12c08)
  • Presenta Icona componibile in TV Material 3 (I72db9)
  • È arrivata la superficie componibile in tv-material con indicazioni quali Bordo, Bagliore e Scala, che possono essere utilizzate per creare componenti che evidenziano chiaramente l'elemento attivo sullo schermo della TV. (I4a6d8), (Iceea1), (Iee4d4), (I79edf), (Icb376)
  • Aggiorna CarouselItem in CarouselSlide in modo che corrisponda al nome del parametro slideCount nell'API "Carousel" (Ic4299)

Versione 1.0.0-alpha04

8 febbraio 2023

androidx.tv:tv-foundation:1.0.0-alpha04 e androidx.tv:tv-material:1.0.0-alpha04 vengono rilasciati. La versione 1.0.0-alpha04 contiene questi commit.

Nuove funzionalità

  • In righe, colonne e griglie lazy, il pivot viene sostituito, se necessario, per garantire che venga visualizzato l'intero elemento. (11d7e40)
  • Aggiungi la personalizzazione dei colori delle schede in stati diversi. (21b2925)
  • Carosello ora accetta animazioni personalizzate per lo scorrimento manuale in avanti e indietro. (431494a)

Modifiche alle API

  • Ridenominazione di androidx.tv.material in androidx.tv.material3 e suddivisione della struttura dei pacchetti in androidx.tv.material3. (I6ca52)
  • L'indicatore nella riga Indicatore carosello ora è un'area che può essere personalizzata dallo sviluppatore. (268af2a)
  • focusableItem rinominato in immersiveListItem. Gli utenti dovranno aggiungere manualmente il modificatore focusable() o clickable() insieme a immersiveListItem (5dd5078)(b/263061052)
  • Rinominato timeToDisplayMillis in autoScrollDurationMillis nel componente Carosello. (431494a)
  • L'utilizzo di CarouselItem è ora limitato all'interno di Carousel. (431494a)
  • Carosello ora accetta ContentTransforms come definizione dell'animazione anziché EnterTransition e ExitTransitions. (431494a)
  • È stata introdotta l'API PinnableContainer propagata da elenchi lenti tramite una composizione locale che consente di fissare l'elemento corrente. (Ib8881, b/259274257, b/195049010)
  • Proprietà mainAxisItemSpacing aggiunta a TvLazyListLayoutInfo e TvLazyGridLayoutInfo (I37765)

Correzioni di bug

  • Aggiorna la riga di tabulazione per assicurarti che gestisca correttamente il numero di tabulazioni pari a 0 o 1. (I44009), (1c01525), (b/264018028)
  • Correggi l'arresto anomalo di focus-search quando TvLazyColumn contiene TvLazyRow vuoto. (e11b4fe), (b/260299091)
  • Il modificatore clickable ora funziona con ImmersiveList. (5dd5078), (b/263061052)
  • Il tasto Indietro viene ora gestito e utilizzato per uscire dal carosello in primo piano. (84c138c)
  • Il carosello non perde lo stato attivo sulla pressione di più tasti. (799489f)
  • Il carosello non perde lo stato attivo in caso di pressioni prolungate dei tasti. (b2cf37e)
  • Arresti anomali risolti quando il numero di slide del carosello cambia. (b261247)

Versione 1.0.0-alpha03

7 dicembre 2022

androidx.tv:tv-foundation:1.0.0-alpha03 e androidx.tv:tv-material:1.0.0-alpha03 vengono rilasciati. La versione 1.0.0-alpha03 contiene questi commit.

Nuove funzionalità

  • TabRow è ora disponibile come API sperimentale che consente agli utenti di aggiungere barre di navigazione in alto alle loro app. In genere, i dispositivi TV si aspettano che le schede vengano caricate quando il titolo della scheda è attivo nella riga della scheda.
  • Gli indicatori specifici per la TV, come gli indicatori di sottolineatura e di testo a pillola, vengono offerti preconfigurati. Esempi di utilizzo sono disponibili in tv-samples

Versione 1.0.0-alpha02

9 novembre 2022

androidx.tv:tv-foundation:1.0.0-alpha02 e androidx.tv:tv-material:1.0.0-alpha02 vengono rilasciati. La versione 1.0.0-alpha02 contiene questi commit.

Correzioni di bug

  • Sono state migliorate le prestazioni dello scorrimento durante lo scorrimento di una raccolta di TvLazyRows/TvLazyColumns riducendo lo spazio di ricerca dello stato attivo.(I723a3)

Versione 1.0.0-alpha01

5 ottobre 2022

androidx.tv:tv-foundation:1.0.0-alpha01 e androidx.tv:tv-material:1.0.0-alpha01 vengono rilasciati. La versione 1.0.0-alpha01 contiene questi commit.

Nuove funzionalità

La prima versione alpha contiene le implementazioni in anteprima dei componenti per i casi d'uso della TV, tra cui:

  • Aggiunta del modificatore scrollableWithPivot per consentire ai contenitori a scorrimento non lento, come riga, colonna e griglia, di far scorrere i contenuti in modo che l'elemento in primo piano rimanga nella stessa posizione sullo schermo della TV.
  • Aggiunta di componibili TvLazyRow,TvLazyColumn, TvLazyHorizontalGrid, TvLazyVerticalGrid per fare in modo che il contenitore scorrevole scorra i contenuti in modo che l'elemento in primo piano rimanga nella stessa posizione sullo schermo della TV.
  • Aggiunta del carosello in primo piano componibile per la TV che consente all'utente di creare un carosello di banner a scorrimento automatico.
  • Aggiunta di un elenco immersivo componibile per la TV che consente all'utente di creare una riga/colonna/griglia immersiva che cambia lo sfondo in base all'elemento dell'elenco in primo piano.

Problemi noti

  • Per impostazione predefinita, quando viene attivato il contenitore a scorrimento, lo stato del primo elemento non viene acquisito.
  • Impostando lo stato attivo su un TextField non si apre sempre la tastiera o potrebbe impedirne lo spostamento in altri campi.
  • Lo scorrimento verticale di un elemento LazyColumn contenente LazyRows ha uno scarso rendimento.