TV

  
Geliştiricilerin TV uygulamaları yazabilmeleri için Oluşturma ve Materyal tasarım işlevleri sağlar
Son Güncelleme Kararlı Sürüm Yayın Adayı Beta Sürümü Alfa Sürümü
10 Temmuz 2024 - 1.0.0-rc01 - -

Bağımlılıkları bildirme

tv-foundation ve tv-material'a bağımlılık eklemek için projenize Google Maven deposunu eklemeniz gerekir. Daha fazla bilgi için Google'ın Maven deposunu okuyun.

Uygulamanız veya modülünün build.gradle dosyasına ihtiyaç duyduğunuz yapılar için bağımlılıkları ekleyin:

Modern

dependencies {
    implementation "androidx.tv:tv-foundation:1.0.0-alpha11"
    implementation "androidx.tv:tv-material:1.0.0-rc01"
}

Kotlin

dependencies {
    implementation("androidx.tv:tv-foundation:1.0.0-alpha11")
    implementation("androidx.tv:tv-material:1.0.0-rc01")
}

Bağımlılıklar hakkında daha fazla bilgi edinmek için Derleme bağımlılıkları ekleme bölümüne bakın.

Geri bildirim

Geri bildiriminiz Jetpack'i iyileştirmemize yardımcı olacaktır. Yeni sorunlar keşfederseniz veya bu kitaplığı iyileştirmeye yönelik fikirleriniz varsa bize bildirin. Yeni bir kitaplık oluşturmadan önce lütfen bu kitaplıktaki mevcut sorunlara göz atın. Yıldız düğmesini tıklayarak mevcut bir soruna oy ekleyebilirsiniz.

Yeni sayı oluştur

Daha fazla bilgi için Sorun İzleyici dokümanlarına bakın.

Bu yapı için sürüm notu yok.

TV-Material Sürüm 1.0

Sürüm 1.0.0-rc01

10 Temmuz 2024

androidx.tv:tv-material:1.0.0-rc01 yayınlandı. Sürüm 1.0.0-rc01 bu kayıtları içerir.

Sürüm 1.0.0-beta01

1 Mayıs 2024

androidx.tv:tv-material:1.0.0-beta01 yayınlandı. Sürüm 1.0.0-beta01 bu kayıtları içerir.

API Değişiklikleri

  • ColorScheme ve yardımcı program işlevleri artık kararlı durumda. (If34fa)
  • LocalContentColor artık kararlı durumda (I60ee2)
  • Typography API artık kararlı (I088d6)
  • Şekil API'leri artık kararlı (I0f5f4)
  • Border API artık kararlı durumda (I69281)
  • Glow API artık kararlı (Iea5f1)
  • Simge bileşeni artık kararlı durumda (I62c2d)
  • LocalTextStyles API artık kararlı (Iaded8)
  • MaterialTheme API artık kararlı (I2f541)
  • Metin Bileşeni artık kararlı durumda (Ib9e31)
  • RadioButton bileşeni artık kararlı durumda (Ia03c8)
  • Anahtar bileşeni artık kararlı durumda (I6cea3)
  • Checkbox bileşenleri artık kararlı (I7eafc)
  • Yüzey bileşenleri artık sabittir (I58758, I04aca)
  • NonInteractiveSurfaceDefaults adlı dosya SurfaceDefaults ve NonInteractiveSurfaceColors adlı dosya SurfaceColors olarak yeniden adlandırıldı (I0812e)
  • Selectable Surface, artık "check" yerine "select" terminolojisini kullanıyor çünkü her ikisi de farklı anlamlara sahip (I5a206)
  • NavigationDrawer ve NavigationDrawerScope artık kararlı (I249c1)
  • NavigationDrawerItem bileşeni artık kararlı (Id6986)
  • Sekme ve TabRow bileşenleri artık kararlı (I92d92)
  • Button, OutlinedButton, IconButton, OutlinedIconButton ve WideButton bileşenleri artık kararlı (Ib4de8)
  • Card, ClassicCard, CompactCard, WideClassicCard, StandardCardContainer ve WideCardContainer bileşenleri artık kararlı (I34390)
  • StandardCardLayout adlı dosya StandardCardContainer ve WideCardLayout adlı dosya WideCardContainer (I08883) olarak yeniden adlandırıldı
  • CardContainerDefaults.ImageCard kaldırıldı ve CardDefaults.ContainerGradient adlı dosya CardDefaults.ScrimBrush (I6adfe) olarak yeniden adlandırıldı. Kart kapsayıcılarınızda CardContainerDefaults.ImageCard yerine Card kullanabilirsiniz.
  • ListItem ve DenseListItem artık kararlı (Idebd9)
  • ListItemDefaults.ListItemShape, ListItemDefaults.FocusedDisabledBorder ve ListItemDefaults.SelectedContainerColorOpacity artık gizli (I5d533)
  • ListItem parametresi yeniden düzenlendi ve ListItemDefaults.ListItemElevation, ListItemDefaults.TonalElevation (Id6841) olarak yeniden adlandırıldı. headlineContent parametresi, composable'ın üst kısmına taşındı. Daha önce, headlineContent öğesini iletmek için Kotlin'in sondaki lambda söz dizimini kullanabilirsiniz. Şimdi, headlineContent özelliğini 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ğerine ayarlanmış null değer içeren bir MutableInteractionSource gösterecek şekilde güncellendi. Burada herhangi bir anlamsal değişiklik yoktur: null değerinin geçirilmesi, MutableInteractionSource öğesini kaldırmak istemediğiniz anlamına gelir ve gerekirse bileşenin içinde oluşturulur. Null değerine geçmek, bazı bileşenlerin hiçbir zaman bir MutableInteractionSource ayırmamasına izin verir ve diğer bileşenlerin yalnızca gerektiğinde geç bir şekilde örnek oluşturmasına olanak tanır. Böylece bu bileşenler genelinde performans artar. Bu bileşenlere ilettiğiniz MutableInteractionSource öğesini kullanmıyorsanız bunun yerine null değerini iletmeniz önerilir. Kendi bileşenlerinizde de benzer değişiklikler yapmanız önerilir. (I309b4, b/298048146)
  • TV Metni bileşeninin TextAlign parametresi artık null değil (Ib73b1, b/299490814)
  • ParagraphTextStyle öğesinin TextAlign, TextDirection, Hyphens ve LineBreak alanlarına özel bir Belirtilmemiş değer eklendi (I4197e, b/299490814)

Davranış Değişiklikleri

  • Etkileşimsiz Surface için shape parametresinin varsayılan değeri RectangleShape (I1b859cb) olarak değiştirildi
  • Gerekli API'ler deneysel olduğundan (I0e755d4) bazı bant özellikleri beta aşamasından kaldırıldı.
  • Surface içindeki contentColor değişikliği artık eyaletler arasında animasyon gerçekleştirmiyor (I436e794f)

Sürüm 1.0.0

Sürüm 1.0.0-alpha11

10 Temmuz 2024

androidx.tv:tv-foundation:1.0.0-alpha11 yayınlandı. Sürüm 1.0.0-alpha11 bu kaydetmeleri içerir.

API Değişiklikleri

  • Tv Lazy Layouts desteği, tv temel kitaplığındaki kullanımdan kaldırıldı. TV geç düzeninden nasıl geçeceğinizi öğ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 serbest bırakıldı. 1.0.0-alpha10 sürümü bu kaydetmeleri içerir.

Yeni Özellikler

  • NavigationDrawerItem ürününün NavigationDrawer ve ModalNavigationDrawer içinde kullanılması kullanıma sunuldu. (I4b491)
  • TV temel kitaplığına temel profil ekleyin. (2b57fd7)
  • TV-malzeme kitaplığına temel profil ekleyin. (1711ff5)

API Değişiklikleri

  • NavigationDrawerScope.doesTabRowHaveFocus adlı dosya NavigationDrawerScope.hasFocus olarak yeniden adlandırıldı. (I8286b)
  • TabRowScope.isActivated adlı dosya TabRowScope.hasFocus olarak yeniden adlandırıldı. (Ic4273)

Hata Düzeltmeleri

  • Bant'ın odak geri yükleme API'leri kullanan bitişik öğelerle uyumluluğunu düzeltin. (7b2a7a4)
  • OS tarafından desteklenmediğinden 28'in altındaki API_LEVEL için parlak göstergesini devre dışı bırak. (6d3616f)
  • Ters yönde hızlı kaydırma yapıldığında, geç kapsayıcılarda hatalı öğe yerleşiminin neden olduğu ANR kilitlenmesi düzeltildi. (642d65c)
  • Kalıcı Gezinme Çekmecesi'nde arka plan dolgusu kaldırıldı. (69965b2)
  • Gezinme Çekmecesi'ndeki Kaydırma'nın, arka plan içeriğinin arkasında değil üzerine çizilmesi için düzeltmesi yapıldı. (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 serbest bırakıldı. Sürüm 1.0.0-alpha09 bu kaydetmeleri içerir.

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ü ekleyin. (I812d1, b/252846775)
  • TV temel çatalını yazma temeli ile senkronize edin. (I737c3, b/287011882)
  • LazyLayout aşırı yüklemesi eklendi. Önceden olduğu gibi basit bir nesne değil, LazyLayoutItemProvider lambda'sını kabul ediyor. Önceki aşırı yükleme desteği sonlandırıldı. (I42a5a)
  • Geliştiricinin dokunmatik klavye konumunu AndroidImeOptions aracılığıyla yapılandırmasına izin vermek için TvKeyboardAlignment ekleyin. (Idb772)
  • TV Oluşturma Materyalinde Saver ile CarouselState hatırlamak için rememberCarouselState ekleyin. (Id7275)
  • Kullanıcıların çerçeveye renk geçişleri eklemesine izin vermek için scrimColor: Color parametresi scrimBrush:Brush parametresi olarak değiştiriliyor. (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 serbest bırakıldı. 1.0.0-alpha08 sürümü bu kaydetmeleri içerir.

Yeni Özellikler

  • TV materyali için Compose'da çip bileşenlerini tanıtın. (I86da4)
  • TV Oluşturma Materyaline ListItem bileşenini ekleyin. (I3f0b3)
  • TV Oluşturma Materyaline DenseListItem bileşenini ekleyin. (I536bf)

API Değişiklikleri

  • Herkese açık TV materyali API'leri Deneysel olarak işaretlendi. (I632e7)
  • TabRow composable'daki durum bilgisini Sekme composable ile paylaşmak için TabRowScope kullanıma sunuldu ve TabColors ö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 serbest bırakıldı. 1.0.0-alpha07 sürümü bu kaydetmeleri içerir.

API Değişiklikleri

  • Bileşenlerin ölçek göstergeleri artık ölçeklendirmeyi devre dışı bırakmak için Yok değerini içeriyor. (I50df5)
  • TV Malzemesi Yüzeyi, Kartlar ve Düğmeler için uzun tıklama desteği eklendi. (Id2b89)
  • CarouselItem ve CarouselScope kaldırıldı. Ön plan içerik animasyonu, slaytta AnimatedContentScope adresindeki Modifier.animateEnterExit kullanılarak gerçekleştirilebilir. (Ic038e)
  • TV Material Surface için color ve contentColor parametreleri colors olarak birleştirildi. (Ie69eb)
  • TV Materyalinde RadioButton composable kullanıma sunuldu. (I08690)
  • TV Materyalinde Switch composable kullanıma sunuldu. (I45e29)
  • TV Materyalinde Checkbox composable kullanıma sunuldu. (I6a45a)
  • TV materyallerinde etkileşime geçilemeyen yüzey kullanıma sunuldu. (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 serbest bırakıldı. 1.0.0-alpha06 sürümü bu kaydetmeleri içerir.

Yeni Özellikler

  • TV için optimize edilmiş Material 3 Card uygulamalarını ekleyin.
    • Temel Kart (I5b701)
    • ClassicCard, CompactCard ve WideClassicCard (I70471)
    • StandardCardLayout ve WideCardLayout (I33fae)
  • TV için optimize edilmiş Material 3 düğmesi uygulamaları ekleyin.

API Değişiklikleri

  • Carousel klasöründeki CarouselSlide ve slideCount öğeleri CarouselItem ve itemCount olarak yeniden adlandırıldı. (Ie554c)
  • forward ve backward ContentTransforms, StartToEnd ve EndToStart olarak yeniden adlandırıldı. (Ie554c)

Hata Düzeltmeleri

  • NavigationDrawer yönüne odaklanıldığında Yön Tuşları düğmesini geri göster. (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 serbest bırakıldı. 1.0.0-alpha05 sürümü bu kaydetmeleri içerir.

API Değişiklikleri

  • tv-material altında derlenebilen Yan Gezinme Çekmecesi ile tanışın. Bu composable'ı nasıl kullanacağınızı öğrenmek için örneklere göz atın. (I12c08)
  • TV Material 3'te (I72db9) composable'ı tanıtın
  • TV ekranında odaklanılan öğeyi net bir şekilde vurgulayan bileşenler oluşturmak için kullanılabilen Sınır, Parıltı ve Ölçekleme gibi göstergelerle tv-material için Yüzey composface özelliğiyle tanışın. (I4a6d8), (Iceea1), (Iee4d4), (I79edf), (Icb376)
  • CarouselItem öğesini, "Carousel" API'sindeki (Ic4299) slideCount parametre adıyla eşleşecek şekilde CarouselSlide olarak güncelleyin.

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 serbest bırakıldı. 1.0.0-alpha04 sürümü bu kaydetmeleri içerir.

Yeni Özellikler

  • Tembel satır, sütun ve ızgaralarda pivot tablo (gerekirse) tüm öğenin görünüme getirildiğinden emin olmak için geçersiz kılınır. (11d7e40)
  • Farklı durumlarda sekme renklerinin özelleştirilmesini ekleyin. (21b2925)
  • Bant artık ileri ve geri manuel kaydırma için özel animasyonları kabul ediyor. (431494a)

API Değişiklikleri

  • androidx.tv.material, androidx.tv.material3 olarak yeniden adlandırılıyor ve paket yapısı androidx.tv.material3 altında birleştiriliyor. (I6ca52)
  • Bant Göstergesi satırındaki gösterge, artık geliştirici tarafından özelleştirilebilen bir alan haline geldi. (268af2a)
  • focusableItem adlı dosya immersiveListItem olarak yeniden adlandırıldı. Kullanıcıların focusable() veya clickable() değiştiricisini immersiveListItem (5dd5078)(b/263061052) ile birlikte manuel olarak eklemesi gerekir
  • Bant bileşeninde timeToDisplayMillis, autoScrollDurationMillis olarak yeniden adlandırıldı. (431494a)
  • CarouselItem artık Carousel içinde kullanılabilir. (431494a)
  • Bant artık EnterTransition ve ExitTransitions yerine, animasyon tanımı olarak ContentTransforms değerini kabul ediyor. (431494a)
  • Geçerli öğenin sabitlenmesini sağlayan, yerel bir beste aracılığıyla geç listeler tarafından dağıtılan PinnableContainer API kullanıma sunuldu. (Ib8881, b/259274257, b/195049010)
  • mainAxisItemSpacing özelliği TvLazyListLayoutInfo ve TvLazyGridLayoutInfo özelliklerine eklendi (I37765)

Hata Düzeltmeleri

  • 0 veya 1'lik 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 odaklanma arama kilitlenmesi düzeltildi. (e11b4fe), (b/260299091)
  • clickable değiştirici artık ImmersiveList ile çalışıyor. (5dd5078), (b/263061052)
  • Geri tuşu artık işlenir ve Öne Çıkan Atlı Karınca'dan çıkmak için kullanılır. (84c138c)
  • Bant, birden fazla hızlı tuşa basıldığında odağı kaybetmez. (799489f)
  • Bant, uzun tuşlara basıldığında odağı kaybetmez. (b2cf37e)
  • Bant slayt sayısı değiştiğinde ortaya çıkan kilitlenmeler 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 serbest bırakıldı. 1.0.0-alpha03 sürümü bu kaydetmeleri içerir.

Yeni Özellikler

  • TabRow, kullanıcıların uygulamalarına üst gezinme çubukları eklemesine olanak tanıyan deneysel bir API olarak kullanıma sunuldu. Genel olarak TV cihazları, sekme satırında sekme başlığına odaklanıldığında sekmelerin yüklenmesini bekler.
  • Altı çizili göstergesi ve hap göstergesi gibi TV'ye özgü göstergeler kullanıma hazır olarak sunulur. Örnek kullanımlar tv örneklerinde bulunabilir

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 serbest bırakıldı. 1.0.0-alpha02 sürümü bu kaydetmeleri içerir.

Hata Düzeltmeleri

  • TvLazyRows/TvLazyColumns koleksiyonunda gezinirken gösterilen arama alanı azaltılarak iyileştirilmiş kaydırma performansı artırıldı.(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 serbest bırakıldı. 1.0.0-alpha01 sürümü bu kaydetmeleri içerir.

Yeni Özellikler

İlk alfa sürümü, TV kullanım alanlarına yönelik bileşenlerin erken önizleme uygulamalarını içerir. Örneğin:

  • Satır, Sütun, Izgara gibi geç kaydırmayan kapsayıcıların, odaktaki öğenin TV ekranında aynı konumda kalması amacıyla kaydırma kapsayıcısının içeriği kaydırmasını sağlamak için scrollableWithPivot değiştiricisi eklendi.
  • Odaktaki öğenin TV ekranında aynı konumda kalması amacıyla kaydırma kapsayıcısının içeriği kaydırmasını sağlamak için TvLazyRow,TvLazyColumn, TvLazyHorizontalGrid, TvLazyVerticalGrid composable'ları ekleme.
  • Kullanıcının otomatik olarak kayan bir banner bandı oluşturmasına olanak tanıyan, TV için derlenebilir Öne Çıkan Bant ekleme.
  • Kullanıcının odaklanılan liste öğesine göre arka planı değiştiren bir Immersive Satır/Sütun/Izgara oluşturarak TV için Yoğun İçerikli Liste composable'ı ekleme.

Bilinen sorunlar

  • Kaydırma kapsayıcısı odağı kazandığında, varsayılan olarak ilk öğeye odaklanmaz.
  • Bir TextField öğesine odaklanılması her zaman klavyenin açılmaz veya odaklanmanın diğer alanlara gitmesini engelleyebilir.
  • LazyRows içeren bir LazyColumn içinde dikey olarak kaydırmak düşük performansa sahiptir.