telewizor

  
udostępnia programistom funkcje tworzenia i projektowania interfejsu Material Design, by móc pisać aplikacje na telewizory
Najnowsza aktualizacja Wersja stabilna Kandydat do publikacji Wersja Beta Wersja alfa
4 października 2023 r. - - - 1.0.0-alfa10

Deklarowanie zależności

Aby dodać zależności od tv-foundation i tv-material, musisz dodać do projektu repozytorium Google Maven. Więcej informacji znajdziesz w repozytorium Google Maven.

W pliku build.gradle aplikacji lub modułu dodaj zależności artefaktów, których potrzebujesz:

Odlotowy

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

Więcej informacji o zależnościach znajdziesz w artykule Dodawanie zależności kompilacji.

Opinia

Twoja opinia pomoże nam ulepszyć Jetpack. Daj nam znać, jeśli znajdziesz nowe wydania lub masz pomysły na ulepszenie tej biblioteki. Zanim utworzysz nową bibliotekę, przejrzyj problemy z tą biblioteką. Możesz oddać głos w ramach istniejącego problemu, klikając przycisk gwiazdki.

Utwórz nowy numer

Więcej informacji znajdziesz w dokumentacji narzędzia Issue Tracker.

Brak informacji o wersji tego artefaktu.

Wersja 1.0.0

Wersja 1.0.0-alfa10

4 października 2023 r.

Opublikowano 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

  • Wprowadziliśmy NavigationDrawerItem do użytku w NavigationDrawer i ModalNavigationDrawer. (I4b491)
  • Dodaj podstawowy profil do biblioteki Fundacji TV. (2b57fd7)
  • Dodaj profil bazowy do biblioteki materiałów tv. (1711ff5)

Zmiany w interfejsie API

  • Nazwa elementu NavigationDrawerScope.doesTabRowHaveFocus została zmieniona na NavigationDrawerScope.hasFocus. (I8286b)
  • Nazwa elementu TabRowScope.isActivated została zmieniona na TabRowScope.hasFocus. (Ic4273)

Poprawki błędów

  • Popraw zgodność karuzeli z sąsiadującymi elementami, które korzystają z interfejsów API funkcji przywracania fokusu. (7b2a7a4)
  • Wyłącz wskaźnik podświetlenia dla API_LEVEL poniżej 28, ponieważ nie jest on obsługiwany przez system operacyjny. (6D3616f)
  • Naprawianie błędu ANR spowodowanego nieprawidłowym umieszczeniem elementu w leniwych kontenerach podczas szybkiego przewijania w odwrotnym kierunku. (642d65c)
  • Usunięto dopełnienie tła w modalnym panelu nawigacji. (69965b2)
  • Usuń zaznaczenie w szufladzie nawigacji, aby rysować nad treścią w tle, a nie za nią. (d4bbefb)

Wersja 1.0.0-alfa09

6 września 2023 r.

Opublikowano 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

  • Dodano interfejs ReusableComposition, który umożliwia zarządzanie cyklem życia i ponownym używaniem podkompozycji. (I812d1, b/252846775)
  • Zsynchronizuj narzędzie tv-Foundation z funkcją compose-foundation. (I737c3, b/287011882)
  • Dodano przeciążenie obiektu LazyLayout. Akceptuje on lambda o wartości LazyLayoutItemProvider, a nie zwykły obiekt, jak wcześniej. Poprzednie przeciążenie zostało wycofane. (I42a5a)
  • Dodaj TvKeyboardAlignment, aby umożliwić deweloperowi skonfigurowanie położenia klawiatury ekranowej w interfejsie AndroidImeOptions. (Idb772).
  • Dodaj element rememberCarouselState, aby zapamiętać CarouselState za pomocą Saver do materiałów telewizyjnych. (Id7275)
  • Zmiana parametru scrimColor: Color na scrimBrush:Brush, aby umożliwić użytkownikom dodawanie gradientów do ekranu. (I254d4)

Wersja 1.0.0-alfa08

26 lipca 2023 r.

Opublikowano 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

  • Przedstaw komponenty elementów scalonych w komponencie do tworzenia materiałów telewizyjnych. (I86da4)
  • Dodaj komponent ListItem do materiału tworzenia wiadomości telewizyjnej. (I3f0b3)
  • Dodaj komponent DenseListItem do materiału tworzenia wiadomości telewizyjnej. (I536bf)

Zmiany w interfejsie API

  • Oznaczono interfejsy API publicznych materiałów telewizyjnych jako eksperymentalne. (I632e7)
  • Wprowadzenie TabRowScope funkcji udostępniania stanu z funkcji TabRow do kompozycji za pomocą właściwości Tab „Tworzenie karty” i nazw właściwości TabColors. (Ief587)

Wersja 1.0.0-alfa07

7 czerwca 2023 r.

Opublikowano 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

  • Wskaźniki skali komponentów obejmują teraz wartość Brak, aby wyłączyć skalowanie. (I50df5)
  • Dodaliśmy obsługę długich kliknięć w przypadku powierzchni Materiał, kart i przycisków. (Id2b89).
  • Użytkownicy CarouselItem i CarouselScope zostali usunięci. Animację zawartości na pierwszym planie można uzyskać na slajdzie przy użyciu elementu Modifier.animateEnterExit z usługi AnimatedContentScope. (Ic038e)
  • Parametry color i contentColor zostały scalone jako colors dla opcji Powierzchnia telewizora. (Ie69eb)
  • Wprowadzono kompozycję RadioButton w elemencie TV. (I08690)
  • Wprowadzono kompozycję Switch w elemencie TV. (I45e29)
  • Wprowadzono kompozycję Checkbox w elemencie TV. (I6a45a)
  • Wprowadziliśmy nieinterakcyjną powierzchnię w przypadku materiału telewizyjnego. (Ic5f85)
  • Wprowadź informacje wewnętrzne. (Ibff82)

Wersja 1.0.0-alfa06

19 kwietnia 2023 r.

Opublikowano 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

  • Dodaj implementacje karty Material 3 zoptymalizowane pod kątem reklam telewizyjnych.
    • Basic Card (I5b701)
    • ClassicCard, CompactCard i WideClassicCard (I70471)
    • StandardCardLayout i WideCardLayout (I33fae)
  • Dodaj implementacje przycisku Material 3 zoptymalizowane pod kątem telewizji.
    • Przycisk podstawowy (I69c11)
    • IconButton i OutlinedIconButton (Ib504c)
    • WideButton (I4cecf)

Zmiany w interfejsie API

  • Zmieniono nazwy CarouselSlide i slideCount w Carousel na CarouselItem i itemCount. (IE554c)
  • Zmieniono nazwy forward i backward ContentTransforms na StartToEnd i EndToStart. (IE554c)

Poprawki błędów

  • Obsługuj przycisk cofania pada po zaznaczeniu opcji NavigationDrawer. (D654f4)

Wersja 1.0.0-alfa05

22 marca 2023 r.

Opublikowano 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

  • Przedstawiamy boczny panel nawigacji z funkcją kompozycji w aplikacji tv-material. Aby dowiedzieć się, jak korzystać z tego elementu kompozycyjnego, zapoznaj się z przykładami. (I12c08)
  • Ikona wprowadzenia do funkcji kompozycyjnej w YouTube Material 3 (I72db9)
  • Przedstawiamy Powierzchnię kompozycyjną dla tv-material z takimi oznaczeniami jak Obramowanie, Poświata i Skala, za pomocą których można tworzyć komponenty wyraźnie podkreślające wybrany element na ekranie telewizora. (I4a6d8), (Iceea1), (Iee4d4), (I79edf), (Icb376)
  • Zmień CarouselItem na CarouselSlide, aby pasowała do nazwy parametru slideCount w interfejsie API „carousel” (Ic4299)

Wersja 1.0.0-alfa04

8 lutego 2023 r.

Opublikowano 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 leniwym wierszach, kolumnach i siatkach przestawienie jest w razie potrzeby zastępowane, aby cały element został wyświetlony. (11d7e40).
  • Dodanie dostosowania kolorów kart w różnych stanach. (21b2925)
  • Karuzela akceptuje teraz niestandardowe animacje dla ręcznego przewijania do przodu i do tyłu. (431494a)

Zmiany w interfejsie API

  • Zmiana nazwy androidx.tv.material na androidx.tv.material3 i spłaszczenie struktury pakietu pod androidx.tv.material3. (I6ca52)
  • Wskaźnik w wierszu wskaźnika obrotowej to teraz boks, który deweloper może dostosować. (268af2a)
  • Nazwa elementu focusableItem została zmieniona na immersiveListItem. Użytkownicy muszą ręcznie dodać modyfikator focusable() lub clickable() razem z modyfikatorem immersiveListItem (5dd5078)(b/263061052)
  • Zmieniono nazwę timeToDisplayMillis na autoScrollDurationMillis w komponencie Karuzela. (431494a)
  • Z usługi CarouselItem można teraz korzystać tylko w domenie Carousel. (431494a)
  • Karuzela akceptuje teraz definicję animacji ContentTransforms, a nie EnterTransition i ExitTransitions. (431494a)
  • Wprowadzono interfejs API PinnableContainer rozpowszechniany przez leniwe listy za pomocą lokalnej kompozycji, co pozwala przypiąć bieżący element. (Ib8881, b/259274257, b/195049010)
  • Dodano właściwość mainAxisItemSpacing do: TvLazyListLayoutInfo i TvLazyGridLayoutInfo (I37765)

Poprawki błędów

  • Zaktualizuj wiersz tabulacji, aby prawidłowo obsługiwał liczbę tabulatorów 0 lub 1. (I44009), (1c01525), (b/264018028)
  • Naprawiono awarię podczas wyszukiwania, gdy element TvLazyColumn zawiera pustą wartość TvLazyRow. (e11b4fe), (b/260299091)
  • Modyfikator clickable działa teraz z: ImmersiveList. (5dd5078), (b/263061052)
  • Klawisz Wstecz jest teraz obsługiwany i używany do zamykania polecanej karuzeli. (84c138c)
  • Karuzela nie traci zaznaczenia po kilku szybkich kliknięciach. (799489f)
  • Karuzela nie traci zaznaczenia po długim naciśnięciu klawisza. (b2cf37e)
  • Rozwiązaliśmy problemy powodujące awarie występujące w przypadku zmiany liczby slajdów w karuzeli. (B261247)

Wersja 1.0.0-alfa03

7 grudnia 2022 r.

Opublikowano 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

  • TabRow jest teraz dostępny jako eksperymentalny interfejs API, który umożliwia użytkownikom dodawanie do aplikacji górnych pasków nawigacyjnych. Ogólnie rzecz biorąc, telewizory oczekują, że karty zostaną wczytane, gdy tytuł karty znajduje się w wierszu kart.
  • Wskaźniki typowe dla telewizora, takie jak wskaźnik podkreślenia czy pigułki, są dostępne od razu. Przykłady użycia znajdziesz w przykładach telewizyjnych.

Wersja 1.0.0-alfa02

9 listopada 2022 r.

Opublikowano 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

  • Ulepszona wydajność przewijania podczas przewijania kolekcji elementów TvLazyRows/TvLazyColumns przez ograniczenie zaznaczenia obszaru wyszukiwania (I723a3).

Wersja 1.0.0-alfa01

5 października 2022 r.

Opublikowano 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 obejmuje wczesne wersje testowe komponentów do zastosowań telewizyjnych, m.in.:

  • Dodano modyfikator scrollableWithPivot, aby umożliwić kontenerom przewijanym bez leniwego przewijania, takim jak wiersz, kolumna czy siatka, przewijany kontener przewijał treść, dzięki czemu aktywny element pozostaje aktywny w tym samym miejscu na ekranie telewizora.
  • Dodanie funkcji kompozycyjnych TvLazyRow,TvLazyColumn, TvLazyHorizontalGrid, TvLazyVerticalGrid powoduje, że przewijany kontener przewija treść, a wyróżniony element pozostaje w tym samym miejscu na ekranie telewizora.
  • Dodanie karuzeli z polecaną karuzelą dla reklam telewizyjnych, która umożliwia użytkownikowi utworzenie automatycznie przewijanej karuzeli banerów.
  • Dodanie listy Immersive List composable for TV, która umożliwia użytkownikowi utworzenie imersyjnego wiersza, kolumny lub siatki umożliwiającej zmianę tła w zależności od wybranego elementu listy.

Znane problemy

  • Gdy przewijany kontener jest zaznaczony, domyślnie pierwszy element nie jest obejmowany.
  • Skupienie na elemencie TextField nie zawsze powoduje otwarcie klawiatury i uniemożliwianie koncentracji na innych polach.
  • Przewijanie w pionie w polu LazyColumn, które zawiera LazyRows, jest mało wydajne.