tv
Son Güncelleme | Kararlı sürüm | Sürüm Adayı | Beta Sürümü | Alfa sürümü |
---|---|---|---|---|
16 Temmuz 2025 | 1.0.1 | - | - | 1.1.0-alpha01 |
Bağımlılıkları bildirme
tv-foundation ve tv-material bağımlılıklarını eklemek için Google Maven deposunu projenize eklemeniz gerekir. Daha fazla bilgi için Google'ın Maven deposunu okuyun.
Uygulamanız veya modülünüz için build.gradle
dosyasına ihtiyacınız olan yapılarla ilgili bağımlılıkları ekleyin:
Groovy
dependencies { implementation "androidx.tv:tv-foundation:1.0.0-alpha12" implementation "androidx.tv:tv-material:1.1.0-alpha01" }
Kotlin
dependencies { implementation("androidx.tv:tv-foundation:1.0.0-alpha12") implementation("androidx.tv:tv-material:1.1.0-alpha01") }
Bağımlılıklar hakkında daha fazla bilgi için Derleme bağımlılıkları ekleme başlıklı makaleyi inceleyin.
Geri bildirim
Geri bildiriminiz Jetpack'in iyileştirilmesine yardımcı olur. Yeni sorunlar keşfederseniz veya bu kitaplığı iyileştirmeye yönelik fikirleriniz olursa lütfen bize bildirin. Yeni bir sorun oluşturmadan önce lütfen bu kitaplıktaki mevcut sorunlara göz atın. Yıldız düğmesini tıklayarak mevcut bir soruna oyunuzu ekleyebilirsiniz.
Daha fazla bilgi için Sorun İzleyici belgelerini inceleyin.
Bu yapıyla ilgili sürüm notu yok.
Tv-Material Version 1.1
Sürüm 1.1.0-alpha01
15 Ocak 2025
androidx.tv:tv-material:1.1.0-alpha01
iptal edilir. 1.1.0-alpha01 sürümü bu commit'leri içerir.
API Değişiklikleri
FocusEnterExitScope.cancelFocus()
öğesinicancelFocusChange()
olarak değiştirme(I89959)FocusProperties.enter
veFocusProperties.exit
,FocusDirection
parametresi yerine alıcı kapsamı kullanılarak sırasıylaonEnter
veonExit
ile değiştirildi. (I6e667)
Hata Düzeltmeleri
- Ölçeklendirme sırasında titrek metni düzeltmek için
CompositingStrategy.OffScreen
, Yüzey'den Metin'e taşındı. (I92b15f17) - Banttaki bozuk odak yönetimini düzeltildi (Ie508b721375)
- Surface (etkileşimli olmayan), etkileşimli olanlara kıyasla daha basit bir uygulamaya sahiptir. (I7ea545150)
Tv-Material Version 1.0
Sürüm 1.0.1
16 Temmuz 2025
androidx.tv:tv-material:1.0.1
iptal edilir. 1.0.1 sürümü bu commit'leri içerir.
Hata Düzeltmeleri
NavigationDrawerItem
yüksekliği, spesifikasyonlarla eşleşecek şekilde güncellendi. (cf9a3ce)- Birleştirme stratejisi yapılandırması, Surface composable'dan Text composable'a taşındı. Bu düzeltme, Exoplayer'ın daha düşük Android API sürümlerinde Surface composable'larında oluşturulmamasına neden olan hatayı düzeltir. (9858ffb)
Sürüm 1.0.0
21 Ağustos 2024
androidx.tv:tv-material:1.0.0
iptal edilir. 1.0.0 sürümü, androidx.tv:tv-material
'nın ilk kararlı sürümüdür.
Sürüm 1.0.0-rc02
7 Ağustos 2024
androidx.tv:tv-material:1.0.0-rc02
iptal edilir. 1.0.0-rc02 sürümü bu commit'leri içerir.
Hata Düzeltmeleri
- Surface composable'da titrek metin animasyonu sorunu düzeltildi. (3163319)
Sürüm 1.0.0-rc01
10 Temmuz 2024
androidx.tv:tv-material:1.0.0-rc01
iptal edilir. 1.0.0-rc01 sürümü bu commit'leri içerir.
Sürüm 1.0.0-beta01
1 Mayıs 2024
androidx.tv:tv-material:1.0.0-beta01
iptal edilir. 1.0.0-beta01 sürümü bu commit'leri içerir.
API Değişiklikleri
ColorScheme
ve yardımcı işlevleri artık kararlı. (If34fa)LocalContentColor
artık kararlı sürümde (I60ee2)Typography
API artık kararlı (I088d6)- Şekil API'leri artık kararlı (I0f5f4)
- Border API artık kararlı (I69281)
- Glow API artık kararlı (Iea5f1)
- Simge bileşeni artık kararlı (I62c2d)
LocalTextStyles
API artık kararlı (Iaded8)MaterialTheme
API artık kararlı (I2f541)- Metin bileşeni artık kararlı (Ib9e31)
RadioButton
bileşeni artık kararlı (Ia03c8)- Geçiş bileşeni artık kararlı (I6cea3)
Checkbox
bileşenleri artık kararlı (I7eafc)- Yüzey bileşenleri artık kararlı (I58758, I04aca)
NonInteractiveSurfaceDefaults
adlı öğeyiSurfaceDefaults
,NonInteractiveSurfaceColors
adlı öğeyi iseSurfaceColors
olarak yeniden adlandırdı (I0812e)- Seçilebilir Yüzey, farklı semantik anlamlara sahip oldukları için artık "işaretle" yerine "seç" terminolojisini kullanıyor (I5a206).
NavigationDrawer
veNavigationDrawerScope
artık kararlı (I249c1)NavigationDrawerItem
bileşeni artık kararlı (Id6986)- Sekme ve
TabRow
bileşenleri artık kararlı (I92d92) Button
,OutlinedButton
,IconButton
,OutlinedIconButton
veWideButton
bileşenleri artık kararlı (Ib4de8)Card
,ClassicCard
,CompactCard
,WideClassicCard
,StandardCardContainer
veWideCardContainer
bileşenleri artık kararlı (I34390)StandardCardLayout
adlı öğeyiStandardCardContainer
,WideCardLayout
adlı öğeyi iseWideCardContainer
olarak yeniden adlandırdı (I08883)CardContainerDefaults.ImageCard
kaldırıldı veCardDefaults.ContainerGradient
,CardDefaults.ScrimBrush
olarak yeniden adlandırıldı (I6adfe). Kart kapsayıcılarınızdaCardContainerDefaults.ImageCard
yerineCard
kullanabilirsiniz.ListItem
veDenseListItem
artık kararlı (Idebd9)ListItemDefaults.ListItemShape
,ListItemDefaults.FocusedDisabledBorder
veListItemDefaults.SelectedContainerColorOpacity
artık gizli (I5d533)ListItem
parametreleri yeniden düzenlendi veListItemDefaults.ListItemElevation
,ListItemDefaults.TonalElevation
olarak yeniden adlandırıldı (Id6841).headlineContent
parametresi, composable'ın en üstüne taşındı. Daha önce,headlineContent
parametresini iletmek için Kotlin'in sondaki lambda söz diziminden yararlanabiliyordunuz. Şimdi,headlineContent
değerini sağlamak için adlandırılmış parametre söz dizimini kullanmanız gerekir.LocalAbsoluteTonalElevation
artık dahili (Ibfc65)ImmersiveList
bileşeni kaldırıldı. Kendiniz nasıl oluşturacağınızı öğrenmek için bu örneğe göz atın. (Id48da)- API'lerinde
MutableInteractionSource
gösteren tv-material bileşenleri, artık varsayılan olarak null değerini alan, null değer atanabilir birMutableInteractionSource
gösterecek şekilde güncellendi. Burada anlamsal bir değişiklik yoktur: null iletmek,MutableInteractionSource
öğesini yükseltmek istemediğiniz anlamına gelir ve gerekirse bileşenin içinde oluşturulur. Değeri null olarak değiştirmek, bazı bileşenlerin hiçbir zamanMutableInteractionSource
ayırmamasına ve diğer bileşenlerin yalnızca ihtiyaç duyduklarında geç oluşturmasına olanak tanır. Bu da bu bileşenlerde performansı artırır. Bu bileşenlere ilettiğinizMutableInteractionSource
değerini kullanmıyorsanız bunun yerine null iletmeniz önerilir. Kendi bileşenlerinizde de benzer değişiklikler yapmanız önerilir. (I309b4, b/298048146) - TV Metni bileşeninin
TextAlign
parametresi artık boş olmayan bir değerdir (Ib73b1, b/299490814) ParagraphTextStyle
'inTextAlign
,TextDirection
,Hyphens
veLineBreak
alanları için (I4197e, b/299490814) yerine geçecek özel bir Belirtilmemiş değeri kullanıma sunuldu.
Davranış Değişiklikleri (Behaviour Changes)
- Etkileşimli olmayan
Surface
içinshape
parametresinin varsayılan değeriRectangleShape
olarak değiştirildi (I1b859cb) - Gerekli API'ler deneysel olduğu için (I0e755d4) beta lansmanında bazı bant özellikleri kullanılamayacak.
Surface
içindekicontentColor
değiştirildiğinde artık durumlar arasında animasyon oluşturulmuyor (I436e794f)
Sürüm 1.0.0
Sürüm 1.0.0-alpha12
15 Ocak 2025
androidx.tv:tv-foundation:1.0.0-alpha12
iptal edilir. 1.0.0-alpha12 sürümü bu commit'leri içerir.
API Değişiklikleri
- tv-foundation'daki tembel düzenleri temizleyin. tv-foundation tembel düzenlerinden geçiş yapmak için 1.0.0-alpha11 sürüm notlarına bakın. (I2fdd3, b/358913893)
Sürüm 1.0.0-alpha11
10 Temmuz 2024
androidx.tv:tv-foundation:1.0.0-alpha11
iptal edilir. 1.0.0-alpha11 sürümü bu commit'leri içerir.
API Değişiklikleri
- Tv Lazy Layouts, tv-foundation kitaplığından kaldırıldı. TV tembel düzenlerinden nasıl geçiş yapacağınızı öğrenmek için bu destek kaydına bakın. (I0855f, b/332674072)
PlatformImeOptions
artık arayüz yerine somut bir sınıf. (If40a4)
Sürüm 1.0.0-alpha10
4 Ekim 2023
androidx.tv:tv-foundation:1.0.0-alpha10
ve androidx.tv:tv-material:1.0.0-alpha10
yayınlandı. Version 1.0.0-alpha10 contains these commits.
Yeni Özellikler
NavigationDrawer
veModalNavigationDrawer
içinde kullanılmak üzereNavigationDrawerItem
tanıtıldı. (I4b491)- tv-foundation kitaplığına temel profil ekleyin. (2b57fd7)
- tv-material kitaplığına temel profil ekleyin. (1711ff5)
API Değişiklikleri
NavigationDrawerScope.doesTabRowHaveFocus
,NavigationDrawerScope.hasFocus
olarak yeniden adlandırıldı. (I8286b)TabRowScope.isActivated
,TabRowScope.hasFocus
olarak yeniden adlandırıldı. (Ic4273)
Hata Düzeltmeleri
- Carousel'in, odak geri yükleme API'lerini kullanan bitişik öğelerle uyumluluğu düzeltildi. (7b2a7a4)
- API_LEVEL 28'den düşükse işletim sistemi tarafından desteklenmediği için parıltı göstergesini devre dışı bırakın. (6d3616f)
- Ters yönde hızlı kaydırma sırasında öğelerin tembel kapsayıcılara yanlış yerleştirilmesinden kaynaklanan ANR kilitlenmesi düzeltildi. (642d65c)
- Kalıcı gezinme çekmecesinde arka plan dolgusu kaldırıldı. (69965b2)
- Gezinme çekmecesindeki karartma, arka plan içeriğinin arkasında değil üzerinde çizilecek şekilde düzeltildi. (d4bbefb)
Sürüm 1.0.0-alpha09
6 Eylül 2023
androidx.tv:tv-foundation:1.0.0-alpha09
ve androidx.tv:tv-material:1.0.0-alpha09
yayınlandı. Version 1.0.0-alpha09 contains these commits.
API Değişiklikleri
- Alt bileşenlerin yaşam döngüsünü ve yeniden kullanımını yönetmek için
ReusableComposition
arayüzü eklendi. (I812d1, b/252846775) - tv-foundation fork'unu compose-foundation ile senkronize edin. (I737c3, b/287011882)
LazyLayout
aşırı yüklemesi eklendi. Artık daha önce olduğu gibi düz bir nesne değil,LazyLayoutItemProvider
lambda'sı kabul ediyor. Önceki aşırı yükleme kullanımdan kaldırıldı. (I42a5a)- Geliştiricinin,
AndroidImeOptions
aracılığıyla dokunmatik klavye konumunu yapılandırmasına izin vermek içinTvKeyboardAlignment
ekleyin. (Idb772) - TV Compose Material ile
CarouselState
öğesini hatırlamak içinrememberCarouselState
öğesiniSaver
ile birlikte ekleyin. (Id7275) - Kullanıcıların scrim'e gradyan eklemesine izin vermek için
scrimColor: Color
parametresiniscrimBrush:Brush
parametresiyle değiştirme. (I254d4)
Sürüm 1.0.0-alpha08
26 Temmuz 2023
androidx.tv:tv-foundation:1.0.0-alpha08
ve androidx.tv:tv-material:1.0.0-alpha08
yayınlandı. Version 1.0.0-alpha08 contains these commits.
Yeni Özellikler
- TV için Compose materyali için Chip bileşenlerini kullanıma sunma. (I86da4)
- TV Compose Material'a
ListItem
bileşenini ekleyin. (I3f0b3) - TV Compose Material'a
DenseListItem
bileşenini ekleyin. (I536bf)
API Değişiklikleri
- Herkese açık TV materyali API'leri deneysel olarak işaretlendi. (I632e7)
TabRowScope
,TabRow
composable'dan Tab composable ile durum paylaşmak için kullanıma sunuldu veTabColors
özellikleri yeniden adlandırıldı. (Ief587)
Sürüm 1.0.0-alpha07
7 Haziran 2023
androidx.tv:tv-foundation:1.0.0-alpha07
ve androidx.tv:tv-material:1.0.0-alpha07
yayınlandı. 1.0.0-alpha07 sürümü şu commit'leri içerir.
API Değişiklikleri
- Bileşenlerin ölçek göstergelerine artık ölçeklemeyi devre dışı bırakmak için Yok seçeneği de dahil ediliyor. (I50df5)
- TV Material Surface, kartlar ve düğmeler için uzun tıklama desteği eklendi. (Id2b89)
CarouselItem
veCarouselScope
kaldırıldı. Ön plan içerik animasyonu,AnimatedContentScope
içindenModifier.animateEnterExit
kullanılarak slaytta elde edilebilir. (Ic038e)- TV Materyal Yüzeyi için
color
vecontentColor
parametrelericolors
olarak birleştirildi. (Ie69eb) - TV Materyal'de
RadioButton
composable'ı kullanıma sunduk. (I08690) - TV Materyal'de
Switch
composable'ı kullanıma sunduk. (I45e29) - TV Materyal'de
Checkbox
composable'ı kullanıma sunduk. (I6a45a) - TV materyalinde etkileşime girilemeyen yüzey tanıtıldı. (Ic5f85)
- Göstergeleri dahili hale getirin. (Ibff82)
Sürüm 1.0.0-alpha06
19 Nisan 2023
androidx.tv:tv-foundation:1.0.0-alpha06
ve androidx.tv:tv-material:1.0.0-alpha06
yayınlandı. 1.0.0-alpha06 sürümü şu commit'leri içerir.
Yeni Özellikler
- TV için optimize edilmiş Material 3 kart uygulamaları ekleyin.
- TV için optimize edilmiş Materyal 3 düğme uygulamaları ekleyin.
API Değişiklikleri
Carousel
içindekiCarouselSlide
veslideCount
,CarouselItem
veitemCount
olarak yeniden adlandırıldı. (Ie554c)forward
vebackward
ContentTransforms
,StartToEnd
veEndToStart
olarak yeniden adlandırıldı. (Ie554c)
Hata Düzeltmeleri
NavigationDrawer
öğesine odaklanıldığında geri DPAD düğmesini işleyin. (d654f4)
Sürüm 1.0.0-alpha05
22 Mart 2023
androidx.tv:tv-foundation:1.0.0-alpha05
ve androidx.tv:tv-material:1.0.0-alpha05
yayınlandı. 1.0.0-alpha05 sürümü şu commit'leri içerir.
API Değişiklikleri
tv-material
'ya eklenebilen yan gezinme çekmecesi composable'ı kullanıma sunuldu. Bu composable'ı nasıl kullanacağınızı öğrenmek için lütfen örneklere bakın. (I12c08)- TV Material 3'te Icon composable'ı tanıtın (I72db9)
- Border, Glow ve Scale gibi göstergelerle
tv-material
için Surface composable'ı kullanıma sunuyoruz. Bu göstergeler, TV ekranında odaklanılan öğeyi net bir şekilde vurgulayan bileşenler oluşturmak için kullanılabilir. (I4a6d8), (Iceea1), (Iee4d4), (I79edf), (Icb376) - "Bant" API'sindeki
slideCount
parametre adıyla eşleşmesi içinCarouselItem
parametresiniCarouselSlide
olarak güncelleyin (Ic4299).
Sürüm 1.0.0-alpha04
8 Şubat 2023
androidx.tv:tv-foundation:1.0.0-alpha04
ve androidx.tv:tv-material:1.0.0-alpha04
yayınlandı. 1.0.0-alpha04 sürümü şu commit'leri içerir.
Yeni Özellikler
- Tembel satırlarda, sütunlarda ve ızgaralarda, öğenin tamamının görünüme getirilmesi için gerekirse pivot geçersiz kılınır. (11d7e40)
- Sekme renklerinin farklı durumlarda özelleştirilmesini ekleyin. (21b2925)
- Döngü artık ileri ve geri manuel kaydırma için özel animasyonları kabul ediyor. (431494a)
API Değişiklikleri
androidx.tv.material
öğesiniandroidx.tv.material3
olarak yeniden adlandırma veandroidx.tv.material3
altındaki paket yapısını düzleştirme. (I6ca52)- Carousel Indicator satırındaki gösterge artık geliştirici tarafından özelleştirilebilen bir alan. (268af2a)
focusableItem
,immersiveListItem
olarak yeniden adlandırıldı. Kullanıcılarınfocusable()
veyaclickable()
değiştiricisiniimmersiveListItem
ile birlikte manuel olarak eklemesi gerekir (5dd5078)(b/263061052)- Atlı karınca bileşeninde
timeToDisplayMillis
,autoScrollDurationMillis
olarak yeniden adlandırıldı. (431494a) CarouselItem
artık yalnızcaCarousel
içinde kullanılabilir. (431494a)- Carousel artık
EnterTransition
veExitTransitions
yerine animasyon tanımı olarakContentTransforms
kabul ediyor. (431494a) PinnableContainer
Mevcut öğenin sabitlenmesine olanak tanıyan bir kompozisyon yereli aracılığıyla tembel listeler tarafından yayılan API'yi kullanıma sunduk. (Ib8881, b/259274257, b/195049010)mainAxisItemSpacing
mülküTvLazyListLayoutInfo
veTvLazyGridLayoutInfo
'ye eklendi (I37765)
Hata Düzeltmeleri
- 0 veya 1 sekme sayısını doğru şekilde işlediğinden emin olmak için sekme satırını güncelleyin. (I44009), (1c01525), (b/264018028)
TvLazyColumn
boşTvLazyRow
içerdiğinde odak arama kilitlenmesi düzeltildi. (e11b4fe), (b/260299091)clickable
değiştiricisi artıkImmersiveList
ile çalışıyor. (5dd5078), (b/263061052)- Geri tuşu artık işleniyor ve Öne Çıkan Öğeler Karuselinden çıkmak için kullanılıyor. (84c138c)
- Carousel, tuşlara hızlıca birden fazla kez basıldığında odağını kaybetmiyor. (799489f)
- Düğmeye uzun basıldığında kaydırma çubuğu odağını kaybetmiyor. (b2cf37e)
- Carousel slayt sayısı değiştiğinde yaşanan kilitlenme sorunları giderildi. (b261247)
Sürüm 1.0.0-alpha03
7 Aralık 2022
androidx.tv:tv-foundation:1.0.0-alpha03
ve androidx.tv:tv-material:1.0.0-alpha03
yayınlandı. 1.0.0-alpha03 sürümü şu commit'leri içerir.
Yeni Özellikler
TabRow
artık deneysel bir API olarak kullanılabiliyor. Bu API sayesinde kullanıcılar, uygulamalarına üst gezinme çubukları ekleyebiliyor. Genellikle TV cihazları, sekme başlığı sekme satırında odaklandığında sekmelerin yüklenmesini bekler.- Alt çizgi göstergesi ve kapsül göstergesi gibi TV'ye özel göstergeler kullanıma hazır olarak sunulur. Kullanım örneklerini tv-samples içinde bulabilirsiniz.
Sürüm 1.0.0-alpha02
9 Kasım 2022
androidx.tv:tv-foundation:1.0.0-alpha02
ve androidx.tv:tv-material:1.0.0-alpha02
yayınlandı. 1.0.0-alpha02 sürümü şu commit'leri içerir.
Hata Düzeltmeleri
- Odak arama alanını küçülterek
TvLazyRows/TvLazyColumns
koleksiyonunda gezinirken kaydırma performansını iyileştirme.(I723a3)
Sürüm 1.0.0-alpha01
5 Ekim 2022
androidx.tv:tv-foundation:1.0.0-alpha01
ve androidx.tv:tv-material:1.0.0-alpha01
yayınlandı. 1.0.0-alpha01 sürümü şu commit'leri içerir.
Yeni Özellikler
İlk alfa sürümünde, aşağıdakiler de dahil olmak üzere TV kullanım alanlarına yönelik bileşenlerin erken önizleme uygulamaları yer almaktadır:
- Row, Column, Grid gibi tembel olmayan kaydırma kapsayıcılarının, kaydırma kapsayıcısının içeriği kaydırarak odaklanılan öğenin TV ekranında aynı konumda kalmasını sağlamasına olanak tanımak için
scrollableWithPivot
değiştiricisini ekleyin. - Odaklanılan öğenin TV ekranında aynı konumda kalması için kaydırma kapsayıcısının içeriği kaydırmasını sağlamak üzere
TvLazyRow
,TvLazyColumn
,TvLazyHorizontalGrid
,TvLazyVerticalGrid
composable'larını ekleyin. - Kullanıcının otomatik kaydırma özelliğine sahip banner rulosu oluşturmasına olanak tanıyan, TV için Öne Çıkan Rulo composable'ı eklendi.
- Kullanıcının, odaklanılan liste öğesine göre arka planı değiştiren bir Immersive Row/Column/Grid oluşturmasına olanak tanıyan TV için Immersive List composable'ı eklendi.
Bilinen sorunlar
- Kaydırma kapsayıcısı odaklandığında ilk öğe varsayılan olarak odaklanmaz.
TextField
odaklanıldığında klavye her zaman açılmaz veya odağın diğer alanlara taşınması engellenebilir.LazyRows
içeren birLazyColumn
içinde dikey olarak kaydırma işlemi düşük performansla yapılıyor.