TV
최근 업데이트 | 안정화 버전 | 출시 후보 버전 | 베타 버전 | 알파 버전 |
---|---|---|---|---|
2023년 10월 4일 | - | - | - | 1.0.0-alpha10 |
종속 항목 선언
tv-foundation 및 tv-material의 종속 항목을 추가하려면 프로젝트에 Google Maven 저장소를 추가해야 합니다. 자세한 내용은 Google Maven 저장소를 읽어보세요.
다음과 같이 앱 또는 모듈의 build.gradle
파일에 필요한 아티팩트의 종속 항목을 추가합니다.
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") }
종속 항목에 관한 자세한 내용은 빌드 종속 항목 추가를 참고하세요.
의견
제출하신 의견은 Jetpack을 개선하는 데 도움이 됩니다. 새로운 문제를 발견하거나 라이브러리 개선을 위한 아이디어가 있다면 Google에 알려 주세요. 새 문제를 제출하기 전에 이 라이브러리의 기존 문제를 살펴보시기 바랍니다. 별표 버튼을 클릭하여 기존 문제에 투표할 수 있습니다.
자세한 내용은 Issue Tracker 문서를 참고하세요.
이 아티팩트의 출시 노트는 없습니다.
버전 1.0.0
버전 1.0.0-alpha10
2023년 10월 4일
androidx.tv:tv-foundation:1.0.0-alpha10
및 androidx.tv:tv-material:1.0.0-alpha10
가 출시되었습니다. 버전 1.0.0-alpha10에 포함된 커밋을 확인하세요.
새로운 기능
NavigationDrawer
및ModalNavigationDrawer
내에서 사용하도록NavigationDrawerItem
를 도입했습니다. 추가했습니다. (I4b491)- tv-foundation 라이브러리에 기준 프로필 추가 추가했습니다. (2b57fd7)
- tv-material 라이브러리에 기준 프로필을 추가합니다. 추가했습니다(1711ff5).
API 변경사항
NavigationDrawerScope.doesTabRowHaveFocus
에서NavigationDrawerScope.hasFocus
으로 이름이 변경되었습니다. 추가했습니다. (I8286b)TabRowScope.isActivated
에서TabRowScope.hasFocus
으로 이름이 변경되었습니다. 추가했습니다. (Ic4273)
버그 수정
- 포커스 복원 API를 사용하는 인접 항목과 캐러셀의 호환성을 수정합니다. 추가했습니다. (7b2a7a4)
- 28 미만 API_LEVEL의 발광 표시는 OS에서 지원되지 않으므로 사용 중지합니다. 추가했습니다. (6d3616f)
- 역방향으로 빠르게 스크롤할 때 지연 컨테이너에서 부적절한 항목 배치로 인해 발생하는 ANR 비정상 종료 문제를 해결했습니다. 추가합니다. (642d65c)
- 모달 탐색 창에서 배경 패딩을 삭제했습니다. 추가했습니다. (69965b2)
- 탐색 창의 스크림이 배경 콘텐츠 뒤가 아닌 위에 그려지도록 수정했습니다. 추가했습니다. (d4bbefb)
버전 1.0.0-alpha09
2023년 9월 6일
androidx.tv:tv-foundation:1.0.0-alpha09
및 androidx.tv:tv-material:1.0.0-alpha09
가 출시되었습니다. 버전 1.0.0-alpha09에 포함된 커밋을 확인하세요.
API 변경사항
- 하위 구성의 수명 주기와 재사용을 관리하는
ReusableComposition
인터페이스를 추가했습니다. 추가했습니다. (I812d1, b/252846775) - tv-foundation 포크를 compose-foundation과 동기화합니다. 추가했습니다. (I737c3, b/287011882)
LazyLayout
의 오버로드가 추가되어 이전과 같이 일반 객체가 아닌LazyLayoutItemProvider
의 람다를 허용합니다. 이전 오버로드는 지원 중단되었습니다. 추가했습니다. (I42a5a)- 개발자가
AndroidImeOptions
를 통해 터치 키보드 위치를 구성할 수 있도록TvKeyboardAlignment
를 추가합니다. 추가했습니다. (Idb772) Saver
로CarouselState
를 기억하도록rememberCarouselState
를 TV Compose Material에 추가합니다. 추가했습니다. (Id7275)- 사용자가 스크림에 그라데이션을 추가할 수 있도록
scrimColor: Color
매개변수를scrimBrush:Brush
매개변수로 변경합니다. 추가했습니다. (I254d4)
버전 1.0.0-alpha08
2023년 7월 26일
androidx.tv:tv-foundation:1.0.0-alpha08
및 androidx.tv:tv-material:1.0.0-alpha08
가 출시되었습니다. 버전 1.0.0-alpha08에 포함된 커밋을 확인하세요.
새로운 기능
- TV Material용 Compose의 칩 구성요소를 도입했습니다. 추가했습니다. (I86da4)
- TV Compose Material에
ListItem
구성요소를 추가합니다. 추가했습니다. (I3f0b3) DenseListItem
구성요소를 TV Compose Material에 추가합니다. 추가했습니다. (I536bf)
API 변경사항
- 공개 tv-material API를 실험용으로 표시했습니다. 추가했습니다. (I632e7)
TabRow
컴포저블의 상태를 Tab 컴포저블과 공유하는TabRowScope
를 도입하고TabColors
속성으로 이름을 바꿨습니다. 추가했습니다. (Ief587)
버전 1.0.0-alpha07
2023년 6월 7일
androidx.tv:tv-foundation:1.0.0-alpha07
및 androidx.tv:tv-material:1.0.0-alpha07
가 출시되었습니다. 버전 1.0.0-alpha07에 포함된 커밋을 확인하세요.
API 변경사항
- 이제 크기 조정을 사용 중지할 수 있도록 구성요소의 배율 표시에 '없음'이 포함됩니다. 추가했습니다. (I50df5)
- TV Material Surface, 카드, 버튼의 긴 클릭 지원을 추가했습니다. 추가했습니다. (Id2b89)
CarouselItem
및CarouselScope
를 삭제했습니다.AnimatedContentScope
의Modifier.animateEnterExit
를 사용하여 슬라이드에서 포그라운드 콘텐츠 애니메이션을 구현할 수 있습니다. 추가했습니다. (Ic038e)- TV Material Surface의
color
및contentColor
매개변수를colors
로 병합했습니다. 추가했습니다. (Ie69eb) - TV Material에
RadioButton
컴포저블을 도입했습니다. 추가했습니다. (I08690) - TV Material에
Switch
컴포저블을 도입했습니다. 추가했습니다. (I45e29) - TV Material에
Checkbox
컴포저블을 도입했습니다. 추가했습니다. (I6a45a) - TV Material에 상호작용 불가능한 노출 영역을 도입했습니다. 추가했습니다. (Ic5f85)
- 표시는 내부용입니다. 추가했습니다. (Ibff82)
버전 1.0.0-alpha06
2023년 4월 19일
androidx.tv:tv-foundation:1.0.0-alpha06
및 androidx.tv:tv-material:1.0.0-alpha06
가 출시되었습니다. 버전 1.0.0-alpha06에 포함된 커밋을 확인하세요.
새로운 기능
- TV에 최적화된 Material 3 Card 구현을 추가합니다.
- TV에 최적화된 Material 3 Button 구현을 추가합니다.
API 변경사항
Carousel
의CarouselSlide
및slideCount
의 이름이CarouselItem
및itemCount
로 변경되었습니다. 추가했습니다. (Ie554c)forward
및backward
ContentTransforms
의 이름이StartToEnd
및EndToStart
로 변경되었습니다. 추가했습니다. (Ie554c)
버그 수정
NavigationDrawer
에 포커스가 있을 때 뒤로 방향 패드 버튼을 처리합니다. 추가했습니다. (d654f4)
버전 1.0.0-alpha05
2023년 3월 22일
androidx.tv:tv-foundation:1.0.0-alpha05
및 androidx.tv:tv-material:1.0.0-alpha05
가 출시되었습니다. 버전 1.0.0-alpha05에 포함된 커밋을 확인하세요.
API 변경사항
tv-material
에 측면 탐색 창 컴포저블을 도입합니다. 이 컴포저블을 사용하는 방법을 알아보려면 샘플을 참고하세요. 추가했습니다. (I12c08)- TV Material 3에 아이콘 컴포저블을 도입했습니다. (I72db9)
- TV 화면에서 포커스가 설정된 요소를 명확하게 강조 표시하는 구성요소를 빌드하는 데 사용할 수 있는 테두리, 발광 효과, 배율과 같은 표시가 포함된
tv-material
에 Surface 컴포저블을 소개합니다. (I4a6d8), (Iceea1), (Iee4d4), (I79edf), (Icb376) - '캐러셀' API의
slideCount
매개변수 이름과 일치하도록CarouselItem
를CarouselSlide
로 업데이트합니다. (Ic4299)
버전 1.0.0-alpha04
2023년 2월 8일
androidx.tv:tv-foundation:1.0.0-alpha04
및 androidx.tv:tv-material:1.0.0-alpha04
가 출시되었습니다. 버전 1.0.0-alpha04에 포함된 커밋을 확인하세요.
새로운 기능
- 지연 행, 열, 그리드에서 필요한 경우 항목 전체가 표시되도록 피벗이 재정의됩니다. (11d7e40)
- 여러 상태의 탭 색상 맞춤설정을 추가했습니다. (21b2925)
- 이제 캐러셀에서 앞뒤 수동 스크롤 맞춤 애니메이션을 받습니다. (431494a)
API 변경사항
androidx.tv.material
의 이름을androidx.tv.material3
으로 변경하고androidx.tv.material3
아래의 패키지 구조를 평탄화했습니다. (I6ca52)- 캐러셀 표시기 내의 표시기는 이제 개발자가 맞춤설정할 수 있는 슬롯입니다. (268af2a)
focusableItem
의 이름을immersiveListItem
으로 변경했습니다. 사용자는focusable()
또는clickable()
수정자를immersiveListItem
과 함께 수동으로 추가해야 합니다. (5dd5078)(b/263061052)- 캐러셀 구성요소에서
timeToDisplayMillis
의 이름을autoScrollDurationMillis
로 변경했습니다. (431494a) - 이제
CarouselItem
은Carousel
내에서 사용하도록 제한됩니다. (431494a) - 이제 캐러셀이
EnterTransition
및ExitTransitions
대신ContentTransforms
를 애니메이션 정의로 받습니다. (431494a) - 현재 항목을 고정할 수 있는 컴포지션 로컬을 통해 지연 목록에 의해 전파되는
PinnableContainer
API를 도입했습니다. (Ib8881, b/259274257, b/195049010) TvLazyListLayoutInfo
및TvLazyGridLayoutInfo
에mainAxisItemSpacing
속성을 추가했습니다. (I37765)
버그 수정
- tab-count 0 또는 1을 올바르게 처리하도록 tab-row를 업데이트했습니다. (I44009), (1c01525), (b/264018028)
TvLazyColumn
에 빈TvLazyRow
가 포함되어 있을 때 포커스 검색 비정상 종료 문제를 해결했습니다. (e11b4fe), (b/260299091)- 이제
clickable
수정자가ImmersiveList
에서 작동합니다. (5dd5078), (b/263061052) - 이제 추천 캐러셀을 종료하는 데 뒤로 키가 처리되고 사용됩니다. (84c138c)
- 키를 여러 번 빠르게 눌러도 캐러셀에서 포커스가 이동되지 않습니다. (799489f)
- 키를 길게 눌러도 캐러셀에서 포커스가 이동되지 않습니다. (b2cf37e)
- 캐러셀 slide-count가 변경될 때 발생하는 비정상 종료 문제를 해결했습니다. (b261247)
버전 1.0.0-alpha03
2022년 12월 7일
androidx.tv:tv-foundation:1.0.0-alpha03
및 androidx.tv:tv-material:1.0.0-alpha03
가 출시되었습니다. 버전 1.0.0-alpha03에 포함된 커밋을 확인하세요.
새로운 기능
- 이제
TabRow
를 실험용 API로 사용하여 상단 탐색 메뉴를 앱에 추가할 수 있습니다. 일반적으로 TV 기기에서는 탭 행에서 탭 제목에 포커스가 올 경우 탭이 로드됩니다. - 밑줄 표시기, 알약 표시기 같은 TV 전용 표시기는 즉시 제공됩니다. 샘플 예는 tv-samples에서 확인할 수 있습니다.
버전 1.0.0-alpha02
2022년 11월 9일
androidx.tv:tv-foundation:1.0.0-alpha02
및 androidx.tv:tv-material:1.0.0-alpha02
가 출시되었습니다. 버전 1.0.0-alpha02에 포함된 커밋을 확인하세요.
버그 수정
- 포커스 검색 공간을 줄여
TvLazyRows/TvLazyColumns
컬렉션을 스크롤할 때 스크롤 성능을 개선했습니다. (I723a3)
버전 1.0.0-alpha01
2022년 10월 5일
androidx.tv:tv-foundation:1.0.0-alpha01
및 androidx.tv:tv-material:1.0.0-alpha01
이 출시되었습니다. 버전 1.0.0-alpha01에 포함된 커밋을 확인하세요.
새로운 기능
첫 번째 알파 버전에는 다음과 같은 TV 사용 사례를 위한 구성요소의 초기 미리보기 구현이 포함되어 있습니다.
- 스크롤 컨테이너가 콘텐츠를 스크롤할 수 있도록 행, 열, 그리드와 같은 비지연 스크롤 컨테이너를 허용하는 수정자
scrollableWithPivot
을 추가하여 포커스가 있는 항목이 TV 화면에서 동일한 위치에 유지됩니다. - 스크롤 컨테이너가 콘텐츠를 스크롤할 수 있도록 컴포저블
TvLazyRow
,TvLazyColumn
,TvLazyHorizontalGrid
,TvLazyVerticalGrid
를 추가하여 포커스가 있는 항목이 TV 화면에서 동일한 위치에 유지됩니다. - 사용자가 자동 스크롤 배너 캐러셀을 만들 수 있는 TV용 추천 캐러셀 컴포저블을 추가합니다.
- 사용자가 포커스가 있는 목록 항목에 따라 배경을 변경하는 몰입형 행/열/그리드를 만들 수 있는 TV용 몰입형 목록 컴포저블을 추가합니다.
알려진 문제
- 스크롤 컨테이너가 포커스를 얻으면 기본적으로 첫 번째 요소는 포커스를 얻지 못합니다.
TextField
에 포커스를 맞추면 항상 키보드가 열리는 것은 아니며 포커스가 다른 필드로 이동하지 못하게 할 수 있습니다.LazyRows
가 포함된LazyColumn
에서 세로로 스크롤하면 성능이 저하됩니다.