telewizor
Ta tabela zawiera listę wszystkich artefaktów w grupie androidx.tv.
| Artefakt | Wersja stabilna | Wersja kandydująca do publikacji | Wersja beta | Wersja alfa |
|---|---|---|---|---|
| tv-foundation | 1.0.0 | - | - | - |
| tv-material | 1.1.0 | - | - | - |
Deklarowanie zależności
Aby dodać zależności od tv-foundation i tv-material, musisz dodać do projektu repozytorium Maven Google. Więcej informacji znajdziesz w artykule Repozytorium Maven Google.
Dodaj zależności dotyczące potrzebnych artefaktów w pliku build.gradle aplikacji lub modułu:
Odlotowe
dependencies { implementation "androidx.tv:tv-foundation:1.0.0" implementation "androidx.tv:tv-material:1.1.0" }
Kotlin
dependencies { implementation("androidx.tv:tv-foundation:1.0.0") implementation("androidx.tv:tv-material:1.1.0") }
Więcej informacji o zależnościach znajdziesz w artykule Dodawanie zależności kompilacji.
Prześlij opinię
Twoja opinia pomoże nam ulepszyć Jetpacka. Jeśli odkryjesz nowe problemy lub masz pomysły na ulepszenie tej biblioteki, daj nam znać. Zanim utworzysz nową kartę, zapoznaj się z dotychczasowymi problemami w tej bibliotece. Możesz oddać głos na istniejący problem, klikając przycisk gwiazdki.
Więcej informacji znajdziesz w dokumentacji narzędzia Issue Tracker.
Nie ma informacji o wersji tego artefaktu.
Tv-Material
Wersja 1.1
Wersja 1.1.0
6 maja 2026 r.
Publikacja androidx.tv:tv-material:1.1.0 Wersja 1.1.0 zawiera te zmiany.
Wersja 1.1.0-rc01
8 kwietnia 2026 r.
Publikacja androidx.tv:tv-material:1.1.0-rc01 Wersja 1.1.0-rc01 zawiera te zmiany.
Wersja 1.1.0-beta01
11 marca 2026 r.
Publikacja androidx.tv:tv-material:1.1.0-beta01 Wersja 1.1.0-beta01 zawiera te zmiany.
Zmiany w interfejsie API
- Projekty wydane w Kotlinie 2.0 wymagają używania KGP w wersji 2.0.0 lub nowszej (Idb6b5, b/344563182).
Wkład zewnętrzny
androidx.compose.ui.graphics.NativePainttypealias został wycofany. Zamiast niego używaj bezpośrednioandroid.graphics.Paint(I6303c, b/477394763)- Zastąp rozszerzenie
Paint.asFrameworkPaint()rozszerzeniemPaint.nativePaint, aby uniknąć ujawniania typu platformy wcommonMainsourceset za pomocątypealias(I6303c, b/477394763).
Wersja 1.1.0-alpha01
15 stycznia 2025 r.
Publikacja androidx.tv:tv-material:1.1.0-alpha01 Wersja 1.1.0-alpha01 zawiera te zmiany.
Zmiany w interfejsie API
- Zmień słowo
FocusEnterExitScope.cancelFocus()nacancelFocusChange()(I89959) - Parametry
FocusProperties.enteriFocusProperties.exitzostały zastąpione odpowiednio parametramionEnterionExit, które używają zakresu odbiorcy zamiast parametruFocusDirection. (I6e667)
Poprawki błędów
- Przeniesiono
CompositingStrategy.OffScreenz powierzchni do tekstu, aby naprawić drgania tekstu podczas skalowania. (I92b15f17) - Naprawiono nieprawidłowe zarządzanie skupieniem uwagi w karuzeli (Ie508b721375)
- W przypadku powierzchni (nieinteraktywnej) implementacja jest prostsza niż w przypadku powierzchni interaktywnych. (I7ea545150)
Wersja 1.0
Wersja 1.0.1
16 lipca 2025 r.
Publikacja androidx.tv:tv-material:1.0.1 Wersja 1.0.1 zawiera te zmiany.
Poprawki błędów
- Zaktualizowano wysokość
NavigationDrawerItem, aby była zgodna ze specyfikacją. (cf9a3ce) - Przeniesiono konfigurację strategii kompozycji z funkcji kompozycyjnej Surface do funkcji kompozycyjnej Text. Rozwiązuje to problem, w którym odtwarzacz ExoPlayer nie renderował się w komponentach Surface na starszych wersjach interfejsu API Androida. (9858ffb)
Wersja 1.0.0
21 sierpnia 2024 r.
Publikacja androidx.tv:tv-material:1.0.0 Wersja 1.0.0 to pierwsza stabilna wersja androidx.tv:tv-material.
Wersja 1.0.0-rc02
7 sierpnia 2024 r.
Publikacja androidx.tv:tv-material:1.0.0-rc02 Wersja 1.0.0-rc02 zawiera te zmiany.
Poprawki błędów
- Naprawiliśmy drgania animacji tekstu w komponowalnym elemencie Surface. (3163319)
Wersja 1.0.0-rc01
10 lipca 2024 r.
Publikacja androidx.tv:tv-material:1.0.0-rc01 Wersja 1.0.0-rc01 zawiera te zmiany.
Wersja 1.0.0-beta01
1 maja 2024 r.
Publikacja androidx.tv:tv-material:1.0.0-beta01 Wersja 1.0.0-beta01 zawiera te zmiany.
Zmiany w interfejsie API
- Interfejs
ColorSchemei jego funkcje narzędziowe są już stabilne. (If34fa) LocalContentColorjest teraz stabilny (I60ee2)TypographyInterfejs API jest już stabilny (I088d6)- Interfejsy API kształtów są teraz stabilne (I0f5f4)
- Interfejs Border API jest już stabilny (I69281)
- Interfejs Glow API jest już stabilny (Iea5f1)
- Komponent ikony jest już stabilny (I62c2d)
LocalTextStylesInterfejs API jest już stabilny (Iaded8)MaterialThemeInterfejs API jest już stabilny (I2f541)- Komponent tekstowy jest teraz stabilny (Ib9e31)
- Komponent
RadioButtonjest teraz stabilny (Ia03c8) - Komponent przełącznika jest teraz stabilny (I6cea3)
- Komponenty
Checkboxsą teraz stabilne (I7eafc) - Komponenty interfejsu są teraz stabilne (I58758, I04aca)
- Zmiana nazwy
NonInteractiveSurfaceDefaultsnaSurfaceDefaultsiNonInteractiveSurfaceColorsnaSurfaceColors(I0812e) - W przypadku platformy Selectable Surface używamy teraz terminu „wybierz” zamiast „zaznacz”, ponieważ mają one różne znaczenia (I5a206).
NavigationDraweriNavigationDrawerScopesą teraz stabilne (I249c1)- Komponent
NavigationDrawerItemjest teraz stabilny (Id6986) - Komponenty karty i
TabRowsą teraz stabilne (I92d92) - Komponenty
Button,OutlinedButton,IconButton,OutlinedIconButtoniWideButtonsą już stabilne (Ib4de8) - Komponenty
Card,ClassicCard,CompactCard,WideClassicCard,StandardCardContaineriWideCardContainersą już stabilne (I34390) - Zmieniono nazwę
StandardCardLayoutnaStandardCardContaineriWideCardLayoutnaWideCardContainer(I08883) - Usunięto element
CardContainerDefaults.ImageCardi zmieniono nazwę elementuCardDefaults.ContainerGradientnaCardDefaults.ScrimBrush(I6adfe). W kontenerach kart możesz używaćCardzamiastCardContainerDefaults.ImageCard. ListItemiDenseListItemsą teraz stabilne (Idebd9)ListItemDefaults.ListItemShape,ListItemDefaults.FocusedDisabledBorderiListItemDefaults.SelectedContainerColorOpacitysą teraz prywatne (I5d533)- Zmieniliśmy kolejność parametrów
ListItemi zmieniliśmy nazwę parametruListItemDefaults.ListItemElevationnaListItemDefaults.TonalElevation(Id6841). ParametrheadlineContentzostał przeniesiony na górę funkcji kompozycyjnej. Wcześniej można było używać składni lambda końcowego w języku Kotlin, aby przekazywaćheadlineContent. Teraz musisz użyć składni nazwanego parametru, aby podać wartośćheadlineContent. LocalAbsoluteTonalElevationjest teraz wewnętrzny (Ibfc65)- Komponent
ImmersiveListzostał usunięty. Aby dowiedzieć się, jak to zrobić, zapoznaj się z tym przykładem. (Id48da) - Komponenty tv-material, które w swoim interfejsie API udostępniały wartość
MutableInteractionSource, zostały zaktualizowane tak, aby udostępniać wartośćMutableInteractionSourcez możliwością przypisania wartości null, która domyślnie ma wartość null. Nie ma tu żadnych zmian semantycznych: przekazanie wartości null oznacza, że nie chcesz podnosićMutableInteractionSource, a w razie potrzeby zostanie on utworzony w komponencie. Ustawienie wartości null pozwala niektórym komponentom nigdy nie przydzielaćMutableInteractionSource, a innym tworzyć instancję tylko wtedy, gdy jest to potrzebne, co zwiększa wydajność tych komponentów. Jeśli nie używasz elementuMutableInteractionSourceprzekazywanego do tych komponentów, zalecamy przekazywanie zamiast niego wartości null. Zalecamy też wprowadzenie podobnych zmian we własnych komponentach. (I309b4, b/298048146) - Parametr
TextAlignkomponentu TV Text nie może już mieć wartości null (Ib73b1, b/299490814) - Wprowadziliśmy specjalną wartość „Nieokreślono” w polach
TextAlign,TextDirection,HyphensiLineBreakwParagraphTextStyle, aby zastąpić (I4197e, b/299490814)
Zmiany w działaniu
- Wartość domyślna parametru
shapew przypadku nieinteraktywnychSurfacezostała zmieniona naRectangleShape(I1b859cb) - Niektóre funkcje karuzeli zostały wycofane w wersji beta, ponieważ niezbędne interfejsy API są eksperymentalne (I0e755d4).
- Zmiana wartości
contentColorwSurfacenie powoduje już animacji między stanami (I436e794f)
Tv-Foundation
Wersja 1.0
Wersja 1.0.0
6 maja 2026 r.
Publikacja androidx.tv:tv-foundation:1.0.0 Wersja 1.0.0 zawiera te zmiany.
Wersja 1.0.0-rc01
8 kwietnia 2026 r.
Publikacja androidx.tv:tv-foundation:1.0.0-rc01 Wersja 1.0.0-rc01 zawiera te zmiany.
Wersja 1.0.0-beta01
11 marca 2026 r.
Publikacja androidx.tv:tv-foundation:1.0.0-beta01 Wersja 1.0.0-beta01 zawiera te zmiany.
Zmiany w interfejsie API
- Projekty wydane w Kotlinie 2.0 wymagają używania KGP w wersji 2.0.0 lub nowszej (Idb6b5, b/344563182).
Wersja 1.0.0-alpha12
15 stycznia 2025 r.
Publikacja androidx.tv:tv-foundation:1.0.0-alpha12 Wersja 1.0.0-alpha12 zawiera te zmiany.
Zmiany w interfejsie API
- Usuwanie leniwych układów z tv-foundation. Aby przeprowadzić migrację z leniwych układów tv-foundation, zapoznaj się z informacjami o wersji 1.0.0-alpha11. (I2fdd3, b/358913893)
Wersja 1.0.0-alpha11
10 lipca 2024 r.
Publikacja androidx.tv:tv-foundation:1.0.0-alpha11 Wersja 1.0.0-alpha11 zawiera te zmiany.
Zmiany w interfejsie API
- Funkcja Tv Lazy Layouts została wycofana z biblioteki tv-foundation. Aby dowiedzieć się, jak zrezygnować z leniwej wersji układu na telewizorze, zapoznaj się z tym zgłoszeniem. (I0855f, b/332674072)
PlatformImeOptionsjest teraz klasą konkretną, a nie interfejsem. (If40a4)
Wersja 1.0.0-alpha10
4 października 2023 roku
Publikacja androidx.tv:tv-foundation:1.0.0-alpha10 i androidx.tv:tv-material:1.0.0-alpha10 Wersja 1.0.0-alpha10 zawiera te zatwierdzenia.
Nowe funkcje
- Wprowadzono
NavigationDrawerItemdo użytku wNavigationDraweriModalNavigationDrawer. (I4b491) - Dodaj profil podstawowy do biblioteki tv-foundation. (2b57fd7)
- Dodaj profil podstawowy do biblioteki tv-material. (1711ff5)
Zmiany w interfejsie API
- Zmieniono nazwę
NavigationDrawerScope.doesTabRowHaveFocusnaNavigationDrawerScope.hasFocus. (I8286b) - Zmieniono nazwę
TabRowScope.isActivatednaTabRowScope.hasFocus. (Ic4273)
Poprawki błędów
- Poprawia zgodność karuzeli z sąsiednimi elementami, które korzystają z interfejsów API przywracania fokusu. (7b2a7a4)
- Wyłącz wskaźnik świecenia dla API_LEVEL poniżej 28, ponieważ nie jest on obsługiwany przez system operacyjny. (6d3616f)
- Naprawiono błąd ANR spowodowany nieprawidłowym umieszczeniem elementu w kontenerach ładowanych na żądanie podczas szybkiego przewijania w kierunku przeciwnym. (642d65c)
- Usunięto dopełnienie tła w panelu nawigacyjnym okna modalnego. (69965b2)
- Poprawiono wyświetlanie półprzezroczystej nakładki w panelu nawigacji, aby była rysowana nad treścią w tle, a nie za nią. (d4bbefb)
Wersja 1.0.0-alpha09
6 września 2023 r.
Publikacja androidx.tv:tv-foundation:1.0.0-alpha09 i androidx.tv:tv-material:1.0.0-alpha09 Wersja 1.0.0-alpha09 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Dodaj interfejs
ReusableCompositiondo zarządzania cyklem życia i ponownym wykorzystywaniem podkompozycji. (I812d1, b/252846775) - Synchronizacja rozwidlenia tv-foundation z compose-foundation. (I737c3, b/287011882)
- Przeciążenie
LazyLayoutzostało dodane, akceptuje ono lambdęLazyLayoutItemProvider, a nie zwykły obiekt, jak to było wcześniej. Poprzednie przeciążenie zostało wycofane. (I42a5a) - Dodaj
TvKeyboardAlignment, aby umożliwić deweloperowi skonfigurowanie pozycji klawiatury ekranowej za pomocąAndroidImeOptions. (Idb772) - Dodaj
rememberCarouselState, aby zapamiętaćCarouselStateza pomocąSaverw TV Compose Material. (Id7275) - Zmiana parametru
scrimColor: ColornascrimBrush:Brush, aby umożliwić użytkownikom dodawanie gradientów do warstwy przyciemniającej. (I254d4)
Wersja 1.0.0-alpha08
26 lipca 2023 r.
Publikacja androidx.tv:tv-foundation:1.0.0-alpha08 i androidx.tv:tv-material:1.0.0-alpha08 Wersja 1.0.0-alpha08 zawiera te zatwierdzenia.
Nowe funkcje
- Wprowadzenie komponentów Chip do materiałów Compose na TV. (I86da4)
- Dodaj komponent
ListItemdo materiału TV Compose. (I3f0b3) - Dodaj komponent
DenseListItemdo materiału TV Compose. (I536bf)
Zmiany w interfejsie API
- Oznaczyliśmy publiczne interfejsy API materiałów telewizyjnych jako eksperymentalne. (I632e7)
- Wprowadzono
TabRowScope, aby udostępniać stan z funkcji kompozycyjnejTabRowfunkcji kompozycyjnej Tab, i zmieniono nazwy właściwościTabColors. (Ief587)
Wersja 1.0.0-alpha07
7 czerwca 2023 r.
Publikacja androidx.tv:tv-foundation:1.0.0-alpha07 i androidx.tv:tv-material:1.0.0-alpha07 Wersja 1.0.0-alpha07 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Wskazania skali komponentów obejmują teraz opcję Brak, która umożliwia wyłączenie skalowania. (I50df5)
- Dodano obsługę długiego kliknięcia w przypadku powierzchni Material Surface, kart i przycisków na telewizorze. (Id2b89)
- Usunięto elementy
CarouselItemiCarouselScope. Animację treści na pierwszym planie można uzyskać na slajdzie za pomocąModifier.animateEnterExitzAnimatedContentScope. (Ic038e) - Połączone parametry
coloricontentColorjakocolorsw przypadku powierzchni reklamowej TV Material Surface. (Ie69eb) - Wprowadzono funkcję
RadioButtonw Material Design na telewizory. (I08690) - Wprowadzono funkcję
Switchw Material Design na telewizory. (I45e29) - Wprowadzono funkcję
Checkboxw Material Design na telewizory. (I6a45a) - Wprowadzono nieinteraktywną powierzchnię w Materialu TV. (Ic5f85)
- Ustawić wskazania jako wewnętrzne. (Ibff82)
Wersja 1.0.0-alpha06
19 kwietnia 2023 r.
Publikacja androidx.tv:tv-foundation:1.0.0-alpha06 i androidx.tv:tv-material:1.0.0-alpha06 Wersja 1.0.0-alpha06 zawiera te zatwierdzenia.
Nowe funkcje
- Dodanie implementacji kart Material 3 zoptymalizowanych pod kątem telewizorów.
- Dodaj implementacje przycisków Material 3 zoptymalizowane pod kątem telewizorów.
Zmiany w interfejsie API
- Zmieniono nazwy
CarouselSlideislideCountwCarouselnaCarouselItemiitemCount. (Ie554c) - Zmieniono nazwy
forwardibackwardContentTransformsnaStartToEndiEndToStart. (Ie554c)
Poprawki błędów
- Obsługa przycisku DPAD Wstecz, gdy jest zaznaczony element
NavigationDrawer. (d654f4)
Wersja 1.0.0-alpha05
22 marca 2023 r.
Publikacja androidx.tv:tv-foundation:1.0.0-alpha05 i androidx.tv:tv-material:1.0.0-alpha05 Wersja 1.0.0-alpha05 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Wprowadzamy komponent Side Navigation Drawer, który można umieścić w
tv-material. Aby dowiedzieć się, jak korzystać z tego komponentu, zapoznaj się z przykładami. (I12c08) - Wprowadzenie komponentu Icon w bibliotece TV Material 3 (I72db9)
- Wprowadzamy komponent Surface do
tv-materialze wskaźnikami takimi jak Border, Glow i Scale, których można używać do tworzenia komponentów wyraźnie wyróżniających element, na którym skupia się uwaga na ekranie telewizora. (I4a6d8), (Iceea1), (Iee4d4), (I79edf), (Icb376) - Zaktualizuj
CarouselItemnaCarouselSlide, aby dopasować nazwę parametruslideCountw interfejsie API „Karuzela” (Ic4299)
Wersja 1.0.0-alpha04
8 lutego 2023 r.
Publikacja androidx.tv:tv-foundation:1.0.0-alpha04 i androidx.tv:tv-material:1.0.0-alpha04 Wersja 1.0.0-alpha04 zawiera te zatwierdzenia.
Nowe funkcje
- W przypadku leniwych wierszy, kolumn i siatek punkt obrotu jest w razie potrzeby zastępowany, aby zapewnić wyświetlenie całego elementu. (11d7e40)
- Dodaj możliwość dostosowywania kolorów kart w różnych stanach. (21b2925)
- Karuzela obsługuje teraz niestandardowe animacje przewijania ręcznego w przód i w tył. (431494a)
Zmiany w interfejsie API
- Zmiana nazwy
androidx.tv.materialnaandroidx.tv.material3i spłaszczenie struktury pakietu wandroidx.tv.material3. (I6ca52) - Wskaźnik w wierszu wskaźnika karuzeli jest teraz miejscem, które deweloper może dostosować. (268af2a)
- Zmieniono nazwę
focusableItemnaimmersiveListItem. Użytkownicy będą musieli ręcznie dodać modyfikatorfocusable()lubclickable()wraz zimmersiveListItem(5dd5078)(b/263061052). - Zmieniono nazwę
timeToDisplayMillisnaautoScrollDurationMillisw komponencie Karuzela. (431494a) - Usługa
CarouselItemjest teraz ograniczona do użytku wCarousel. (431494a) - Karuzela akceptuje teraz
ContentTransformsjako definicję animacji zamiastEnterTransitioniExitTransitions. (431494a) - Wprowadzono interfejs API
PinnableContainerpropagowany przez leniwe listy za pomocą lokalnego komponentu, który umożliwia przypinanie bieżącego elementu. (Ib8881, b/259274257, b/195049010) - Dodano właściwość
mainAxisItemSpacingdoTvLazyListLayoutInfoiTvLazyGridLayoutInfo(I37765)
Poprawki błędów
- Zaktualizuj wiersz kart, aby prawidłowo obsługiwał liczbę kart równą 0 lub 1. (I44009), (1c01525), (b/264018028)
- Naprawiono błąd powodujący awarię wyszukiwania po zaznaczeniu, gdy
TvLazyColumnzawiera pusty elementTvLazyRow. (e11b4fe), (b/260299091) - Modyfikator
clickabledziała teraz zImmersiveList. (5dd5078), (b/263061052) - Klawisz Wstecz jest teraz obsługiwany i używany do zamykania karuzeli z wyróżnionymi treściami. (84c138c)
- Karuzela nie traci ostrości przy wielokrotnym szybkim naciśnięciu klawisza. (799489f)
- Karuzela nie traci zaznaczenia przy długim naciśnięciu klawisza. (b2cf37e)
- Rozwiązano problem z awariami, które występowały, gdy zmieniała się liczba slajdów w karuzeli. (b261247)
Wersja 1.0.0-alpha03
7 grudnia 2022 r.
Publikacja androidx.tv:tv-foundation:1.0.0-alpha03 i androidx.tv:tv-material:1.0.0-alpha03 Wersja 1.0.0-alpha03 zawiera te zatwierdzenia.
Nowe funkcje
TabRowjest teraz dostępny jako eksperymentalny interfejs API, który umożliwia dodawanie do aplikacji górnych pasków nawigacyjnych. Zazwyczaj urządzenia TV oczekują, że karty będą się wczytywać, gdy tytuł karty jest zaznaczony w wierszu kart.- Wskaźniki specyficzne dla telewizora, takie jak wskaźnik podkreślenia i wskaźnik w formie pigułki, są dostępne od razu. Przykłady użycia znajdziesz w tv-samples.
Wersja 1.0.0-alpha02
9 listopada 2022 r.
Publikacja androidx.tv:tv-foundation:1.0.0-alpha02 i androidx.tv:tv-material:1.0.0-alpha02 Wersja 1.0.0-alpha02 zawiera te zatwierdzenia.
Poprawki błędów
- Poprawiono wydajność przewijania kolekcji
TvLazyRows/TvLazyColumnsprzez zmniejszenie przestrzeni wyszukiwania fokusu.(I723a3)
Wersja 1.0.0-alpha01
5 października 2022 r.
Publikacja androidx.tv:tv-foundation:1.0.0-alpha01 i androidx.tv:tv-material:1.0.0-alpha01 Wersja 1.0.0-alpha01 zawiera te zatwierdzenia.
Nowe funkcje
Pierwsza wersja alfa zawiera wczesne implementacje komponentów do zastosowań telewizyjnych, w tym:
- Dodanie modyfikatora
scrollableWithPivot, aby umożliwić kontenerom przewijania bez leniwego ładowania, takim jak Row, Column i Grid, przewijanie treści w taki sposób, aby element, na którym skupia się uwaga, pozostawał w tym samym miejscu na ekranie telewizora. - Dodanie funkcji kompozycyjnych
TvLazyRow,TvLazyColumn,TvLazyHorizontalGrid,TvLazyVerticalGrid, aby kontener przewijania przewijał treści tak, aby element w centrum uwagi pozostawał w tym samym miejscu na ekranie telewizora. - Dodanie komponentu Featured Carousel (Karuzela z wyróżnionymi treściami) na telewizor, który umożliwia użytkownikowi tworzenie automatycznie przewijanej karuzeli banerów.
- Dodanie komponentu Immersive List na telewizory, który umożliwia użytkownikowi utworzenie wciągającego wiersza, kolumny lub siatki, w których tło zmienia się w zależności od elementu listy, na którym skupia się uwaga.
Znane problemy
- Gdy kontener przewijania zostanie zaznaczony, pierwszy element nie jest domyślnie zaznaczany.
- Skupienie się na
TextFieldnie zawsze powoduje otwarcie klawiatury lub może uniemożliwić przeniesienie fokusu na inne pola. - Przewijanie w pionie w elemencie
LazyColumnzawierającym elementLazyRowsdziała słabo.