tv
Atualização mais recente | Versão estável | Versão candidata a lançamento | Versão Beta | Versão Alfa |
---|---|---|---|---|
4 de outubro de 2023 | - | - | - | 1.0.0-alpha10 |
Declarar dependências
Para adicionar dependências em tv-foundation e tv-material, é preciso adicionar o repositório Maven do Google ao seu projeto. Consulte a seção Repositório Maven do Google para mais informações.
Adicione as dependências dos artefatos necessários ao arquivo build.gradle
do
seu app ou módulo:
Groovy
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") }
Para mais informações sobre dependências, consulte Adicionar dependências de build.
Feedback
Seu feedback ajuda a melhorar o Jetpack. Avise se você descobrir novos problemas ou tiver ideias para melhorar esta biblioteca. Consulte os problemas conhecidos nesta biblioteca antes de criar um novo. Adicione seu voto a um problema clicando no botão de estrela.
Consulte a documentação do Issue Tracker para saber mais.
Não há notas de versão para este artefato.
Versão 1.0.0
Versão 1.0.0-alpha10
4 de outubro de 2023
Lançamento de androidx.tv:tv-foundation:1.0.0-alpha10
e androidx.tv:tv-material:1.0.0-alpha10
. A versão 1.0.0-alpha10 contém estas confirmações.
Novos recursos
- Introdução de
NavigationDrawerItem
para ser usado emNavigationDrawer
eModalNavigationDrawer
. (I4b491). - Adição do perfil de referência à biblioteca tv-foundation. (2b57fd7).
- Adição do perfil de referência à biblioteca tv-material. (1711ff5).
Mudanças na API
NavigationDrawerScope.doesTabRowHaveFocus
foi renomeado comoNavigationDrawerScope.hasFocus
(I8286b).TabRowScope.isActivated
foi renomeado comoTabRowScope.hasFocus
(Ic4273).
Correções de bugs
- Correção da compatibilidade do Carousel com itens adjacentes que usam APIs do restaurador de foco (7b2a7a4).
- Desative a indicação de luminosidade para API_LEVEL inferior a 28, pois esta não é compatível com o SO. (6d3616f).
- Correção da falha de ANR causada pela colocação inadequada de itens em contêineres lentos ao rolar a tela rapidamente na direção inversa (642d65c).
- Remoção do padding do plano de fundo na gaveta de navegação modal (69965b2).
- O Scrim na gaveta de navegação foi corrigido para ser desenhado acima do conteúdo em segundo plano, em vez de atrás dele (d4bbefb).
Versão 1.0.0-alpha09
6 de setembro de 2023
Lançamento de androidx.tv:tv-foundation:1.0.0-alpha09
e androidx.tv:tv-material:1.0.0-alpha09
. A versão 1.0.0-alpha09 contém estas confirmações.
Mudanças na API
- A interface
ReusableComposition
foi adicionada para gerenciar o ciclo de vida e a reutilização de subcomposições (I812d1, b/252846775). - Sincronizar a bifurcação da tv-foundation com a compose-foundation. (I737c3, b/287011882).
- A sobrecarga de
LazyLayout
foi adicionada. Ela aceita uma lambda deLazyLayoutItemProvider
, não um objeto simples como antes. A sobrecarga anterior foi descontinuada. (I42a5a). - Adição de
TvKeyboardAlignment
para permitir que o desenvolvedor configure a posição do teclado na tela usando oAndroidImeOptions
(Idb772). - Adição de
rememberCarouselState
para lembrarCarouselState
comSaver
no TV Compose Material (Id7275). - Mudança do parâmetro
scrimColor: Color
parascrimBrush:Brush
para permitir que os usuários adicionem gradientes ao scrim. (I254d4).
Versão 1.0.0-alpha08
26 de julho de 2023
Lançamento de androidx.tv:tv-foundation:1.0.0-alpha08
e androidx.tv:tv-material:1.0.0-alpha08
. A versão 1.0.0-alpha08 contém estas confirmações.
Novos recursos
- Introdução de componentes de ícone ao Material do Compose para TV. (I86da4).
- O componente
ListItem
foi adicionado ao TV Compose Material. (I3f0b3). - Foi adicionado o componente
DenseListItem
ao TV Compose Material (I536bf).
Mudanças na API
- As APIs públicas tv-material foram marcadas como experimentais. (I632e7).
- Introdução de
TabRowScope
para compartilhar o estado do elemento combinávelTabRow
com o elemento combinável Tab e renomear as propriedadesTabColors
. (Ief587).
Versão 1.0.0-alpha07
7 de junho de 2023
Lançamento de androidx.tv:tv-foundation:1.0.0-alpha07
e androidx.tv:tv-material:1.0.0-alpha07
. A versão 1.0.0-alpha07 contém estas confirmações.
Mudanças na API
- As indicações de escala dos componentes agora incluem "Nenhum" para desativar o dimensionamento. (I50df5).
- Foi adicionado suporte a cliques longos para cards, botões e superfícies do Material de TV (Id2b89).
CarouselItem
eCarouselScope
foram removidos. A animação de conteúdo em primeiro plano pode ser implementada no slide usandoModifier.animateEnterExit
deAnimatedContentScope
. (Ic038e).- Os parâmetros
color
econtentColor
foram mesclados comocolors
para o TV Material Surface (Ie69eb). - Introdução do elemento combinável
RadioButton
no TV Material. (I08690). - Introdução do elemento combinável
Switch
no TV Material. (I45e29). - Introdução do elemento combinável
Checkbox
no TV Material. (I6a45a). - A superfície não interativa foi introduzida no material de TV. (Ic5f85).
- Faça indicações internas. (Ibff82).
Versão 1.0.0-alpha06
19 de abril de 2023
Lançamento de androidx.tv:tv-foundation:1.0.0-alpha06
e androidx.tv:tv-material:1.0.0-alpha06
. A versão 1.0.0-alpha06 contém estas confirmações.
Novos recursos
- Foram adicionadas implementações de card do Material 3 otimizadas para TV
- Adição de implementações do botão do Material 3 otimizadas para TV
Mudanças na API
CarouselSlide
eslideCount
emCarousel
foram renomeados comoCarouselItem
eitemCount
(Ie554c).forward
ebackward
ContentTransforms
foram renomeados comoStartToEnd
eEndToStart
. (Ie554c).
Correções de bugs
- Processar o botão "Voltar" do Dpad quando o foco está em
NavigationDrawer
. (d654f4).
Versão 1.0.0-alpha05
22 de março de 2023
Lançamento de androidx.tv:tv-foundation:1.0.0-alpha05
e androidx.tv:tv-material:1.0.0-alpha05
. A versão 1.0.0-alpha05 contém estas confirmações.
Mudanças na API
- Apresentação do elemento combinável da gaveta de navegação lateral no
tv-material
. Para aprender a usar esse elemento combinável, consulte os exemplos. (I12c08). - Introdução do elemento combinável Icon no TV Material 3 (I72db9).
- O elemento combinável de superfície foi introduzido no
tv-material
com indicações, como Borda, Brilho e Escala, que podem ser usadas para criar componentes que destacam claramente o elemento em foco na tela da TV. (I4a6d8), (Iceea1), (Iee4d4), (I79edf), (Icb376). - O
CarouselItem
foi atualizado paraCarouselSlide
para corresponder ao nome do parâmetroslideCount
na API "Carousel" (Ic4299).
Versão 1.0.0-alpha04
8 de fevereiro de 2023
Lançamento de androidx.tv:tv-foundation:1.0.0-alpha04
e androidx.tv:tv-material:1.0.0-alpha04
. A versão 1.0.0-alpha04 contém estas confirmações.
Novos recursos
- Em linhas, colunas e grades lentas, a tabela dinâmica vai ser substituída, se necessário, para que todo o item seja visualizado (11d7e40).
- Foram adicionadas personalização de cores da guia em estados diferentes (21b2925).
- O carrossel agora aceita animações personalizadas com rolagem manual para frente e para trás (431494a).
Mudanças na API
- Renomeação de
androidx.tv.material
comoandroidx.tv.material3
e nivelamento da estrutura do pacote emandroidx.tv.material3
(I6ca52). - O indicador na linha "Carousel Indicator" (Indicador do carrossel) agora é um slot que pode ser personalizado pelo desenvolvedor (268af2a).
focusableItem
foi renomeado comoimmersiveListItem
. Os usuários precisam adicionar manualmente o modificadorfocusable()
ouclickable()
comimmersiveListItem
(5dd5078) (b/263061052).- O
timeToDisplayMillis
foi renomeado comoautoScrollDurationMillis
no componente do carrossel (431494a). - O uso de
CarouselItem
agora é restrito paraCarousel
(431494a). - O componente do carrossel agora aceita
ContentTransforms
como a definição da animação em vez deEnterTransition
eExitTransitions
(431494a). - Introdução da API
PinnableContainer
propagada por listas lentas usando um local de composição que permite fixar o item atual (Ib8881, b/259274257, b/195049010). - A propriedade
mainAxisItemSpacing
foi adicionada aTvLazyListLayoutInfo
eTvLazyGridLayoutInfo
(I37765).
Correções de bugs
- A linha da guia foi atualizada para garantir que ela processe a contagem de guias de 0 ou 1 corretamente (I44009), (1c01525), (b/264018028).
- Foi corrigida a falha na pesquisa de foco quando
TvLazyColumn
contém umaTvLazyRow
vazia (e11b4fe), (b/260299091). - O modificador
clickable
agora funciona comImmersiveList
(5dd5078), (b/263061052). - A tecla "Voltar" agora é processada e usada para sair do carrossel em destaque (84c138c).
- O carrossel não perde o foco após vários pressionamentos de tecla rápidos (799489f).
- O carrossel não perde o foco após pressionamentos de tecla longos (b2cf37e).
- Correção de falhas ocorridas quando a contagem de slides do carrossel mudava (b261247).
Versão 1.0.0-alpha03
7 de dezembro de 2022
Lançamento de androidx.tv:tv-foundation:1.0.0-alpha03
e androidx.tv:tv-material:1.0.0-alpha03
. A versão 1.0.0-alpha03 contém estas confirmações.
Novos recursos
- Agora,
TabRow
está disponível como uma API experimental e permite que os usuários adicionem as principais barras de navegação aos apps. Geralmente, dispositivos de TV esperam que as guias carreguem quando o título delas está focado na linha de guias. - Indicadores específicos de TV, como o sublinhado e o em forma de pílula são oferecidos prontos para uso. Os usos de exemplo podem ser encontrados em exemplos-tv.
Versão 1.0.0-alpha02
9 de novembro de 2022
Lançamento de androidx.tv:tv-foundation:1.0.0-alpha02
e androidx.tv:tv-material:1.0.0-alpha02
. A versão 1.0.0-alpha02 contém estas confirmações.
Correções de bugs
- Melhora no desempenho da rolagem em uma coleção de
TvLazyRows/TvLazyColumns
, reduzindo o espaço de pesquisa de foco (I723a3).
Versão 1.0.0-alpha01
5 de outubro de 2022
Lançamento de androidx.tv:tv-foundation:1.0.0-alpha01
e androidx.tv:tv-material:1.0.0-alpha01
. A versão 1.0.0-alpha01 contém estas confirmações.
Novos recursos
A primeira versão Alfa contém implementações de pré-lançamento antecipado de componentes para casos de uso de TV, incluindo:
- Foi adicionado o modificador
scrollableWithPivot
para permitir que contêineres de rolagem não lentos (como Row, Column e Grid) façam com que o contêiner role o conteúdo para que o item em foco permaneça na mesma posição na tela da TV. - Os elementos combináveis
TvLazyRow
,TvLazyColumn
,TvLazyHorizontalGrid
eTvLazyVerticalGrid
foram adicionados. Dessa forma, o contêiner vai rolar o conteúdo para que o item em foco permaneça na mesma posição na tela da TV. - Foi adicionado um elemento combinável de carrossel em destaque para TV que permite ao usuário criar um carrossel de banner com rolagem automática.
- Foi adicionado um elemento combinável de lista imersiva para TV que permite ao usuário criar uma linha/coluna/grade imersiva que muda o plano de fundo com base no item da lista em foco.
Problemas conhecidos
- Por padrão, quando o contêiner de rolagem ganha foco, o primeiro elemento não ganha.
- O foco em um
TextField
nem sempre abre o teclado ou pode inibir a seleção de outros campos. - A rolagem vertical em uma
LazyColumn
contendoLazyRows
tem um desempenho ruim.