TV

  
Geliştiricilere TV uygulamaları yazabilmeleri için Oluşturma ve Materyal tasarım işlevleri sağlar
Son Güncelleme Kararlı Sürüm Serbest Bırakma Adayı Beta Sürümü Alfa Sürümü
1 Mayıs 2024 - - 1.0.0-beta01 -

Bağımlılıkları bildirme

tv-foundation ve tv-material'e 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ın veya modülünüz için build.gradle dosyasına ihtiyaç duyduğunuz yapıların bağımlılıklarını ekleyin:

Modern

dependencies {
    implementation "androidx.tv:tv-foundation:1.0.0-alpha10"
    implementation "androidx.tv:tv-material:1.0.0-beta01"
}

Kotlin

dependencies {
    implementation("androidx.tv:tv-foundation:1.0.0-alpha10")
    implementation("androidx.tv:tv-material:1.0.0-beta01")
}

Bağımlılıklar hakkında daha fazla bilgi edinmek için Derleme bağımlılıkları ekleme konusuna bakın.

Geri bildirim

Geri bildiriminiz Jetpack'i daha iyi hale getirmemize yardımcı oluyor. Yeni sorunlar keşfederseniz veya bu kitaplığı nasıl geliştirebileceğimizle ilgili fikirleriniz varsa 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.

Yeni sayı oluşturma

Daha fazla bilgi için Sorun İzleyici belgelerine bakın.

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

TV Materyali Sürüm 1.0

Sürüm 1.0.0-beta01

1 Mayıs 2024

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

API Değişiklikleri

  • ColorScheme ve yardımcı işlevleri artık kararlı. (If34fa)
  • LocalContentColor artık kararlı (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)
  • Anahtar bileşeni artık kararlı (I6cea3)
  • Checkbox bileşenleri artık kararlı (I7eafc)
  • Yüzey bileşenleri artık kararlı (I58758, I04aca)
  • NonInteractiveSurfaceDefaults adı SurfaceDefaults, NonInteractiveSurfaceColors adı ise SurfaceColors (I0812e) olarak değiştirildi
  • Seçilebilir Yüzey, her ikisinin de anlamları farklı olduğundan artık "kontrol et" yerine "seç" terminolojisini kullanmaktadır (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 adı StandardCardContainer, WideCardLayout adı ise WideCardContainer (I08883) olarak değiştirildi
  • CardContainerDefaults.ImageCard kaldırıldı ve CardDefaults.ContainerGradient alanı CardDefaults.ScrimBrush (I6adfe) olarak yeniden adlandırıldı
  • 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 öğesi ListItemDefaults.TonalElevation (Id6841) olarak yeniden adlandırıldı
  • LocalAbsoluteTonalElevation artık dahili (Ibfc65)
  • ImmersiveList bileşeni kaldırıldı. Kendi başınıza nasıl oluşturacağınızı öğrenmek için bu örneğe göz atın. (Id48da)
  • API'lerinde bir MutableInteractionSource gösteren tv-malzeme bileşenleri, artık varsayılan olarak null değerine sahip null özellikli bir MutableInteractionSource gösterecek şekilde güncellenmiştir. Burada anlamsal değişiklik yok: null değerinin geçirilmesi, MutableInteractionSource öğesini kaldırmak istemediğiniz anlamına gelir ve gerekirse bileşenin içinde oluşturulur. Null değişikliği, bazı bileşenlerin hiçbir zaman MutableInteractionSource tahsis etmemesine izin verir ve diğer bileşenlerin gerektiğinde yalnızca geç bir şekilde örnek oluşturmasına olanak tanır. Bu da bu bileşenlerin performansını artırır. Bu bileşenlere ilettiğiniz MutableInteractionSource öğesini kullanmıyorsanız bunun yerine null değerini iletmeniz önerilir. Ayrıca, kendi bileşenlerinizde de benzer değişiklikler yapmanız önerilir. (I309b4, b/298048146)
  • TV Metni bileşeninin TextAlign parametresi artık boş değil (Ib73b1, b/299490814)
  • Değiştirilecek ParagraphTextStyle kapsamındaki TextAlign, TextDirection, Hyphens ve LineBreak alanları için özel bir Belirtilmemiş değer kullanıma sunuldu (I4197e, b/299490814)

Sürüm 1.0.0

Sürüm 1.0.0-alfa10

4 Ekim 2023

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

Yeni Özellikler

  • NavigationDrawer ve ModalNavigationDrawer dahilinde kullanılmak üzere NavigationDrawerItem kullanıma sunuldu. (I4b491)
  • tv-foundation kitaplığına temel profil ekleyin. (2b57fd7)
  • TV materyali 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

  • Bandın, odak geri yükleme API'leri kullanan bitişik öğelerle uyumluluğu düzeltildi. (7b2a7a4)
  • OS tarafından desteklenmediğinden API_LEVEL 28'in altında parlaklık gösterimini devre dışı bırak. (6d3616f)
  • Ters yönde hızlı kaydırma yaparken öğelerin geç kapsayıcılara yanlış yerleştirilmesinden kaynaklanan ANR kilitlenmeleri düzeltildi. (642d65c)
  • Kalıcı Gezinme Çekmecesi'ndeki arka plan dolgusu kaldırıldı. (69965b2)
  • Gezinme Çekmecesindeki Scrim'i, arka plan içeriğinin arkasında değil üzerine çizilecek şekilde düzeltin. (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ı. Sürüm 1.0.0-alpha09 bu kayıtları içerir.

API Değişiklikleri

  • Alt bestelerin yaşam döngüsünü yönetmek ve yeniden kullanmak için ReusableComposition arayüzü ekleyin. (I812d1, b/252846775)
  • tv- Foundation çatalı, Composer-Temel ile senkronize edilir. (I737c3, b/287011882)
  • Aşırı LazyLayout yüklemesi eklendi. LazyLayoutItemProvider lambda değerini kabul ediyor, daha önce olduğu gibi düz bir nesne kabul etmiyor. Önceki aşırı yükleme kullanımdan kaldırıldı. (I42a5a)
  • Geliştiricinin dokunmatik klavye konumunu AndroidImeOptions aracılığıyla yapılandırmasına izin vermek için TvKeyboardAlignment ekleyin. (Idb772)
  • TV İçerik Üretici Materyali'ne Saver ile birlikte CarouselState uygulamasını hatırlamak için rememberCarouselState ekleyin. (Id7275)
  • Kullanıcıların gradyanlara 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 yayınlandı. 1.0.0-alpha08 sürümü bu kayıtları içerir.

Yeni Özellikler

  • TV materyalleri için Compose'da Çip bileşenlerini tanıtın. (I86da4)
  • TV İçerik Oluşturma Materyaline ListItem bileşenini ekleyin. (I3f0b3)
  • TV İçerik 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 ürününün Tab composable ile composable'ın durumunu paylaşması için TabRowScope kullanıma sunuldu ve Sekme composable ile yeniden adlandırılmış TabColors özellikleri kullanıma sunuldu. (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ü bu kayıtları 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çerir. (I50df5)
  • TV Malzemesi Yüzeyi, Kartlar ve Düğmeler için uzun tıklama desteği eklendi. (Id2b89)
  • CarouselItem ve CarouselScope kaldırıldı. Slaytta, AnimatedContentScope içindeki Modifier.animateEnterExit öğesi kullanılarak ön plan içerik animasyonu oluşturulabilir. (Ic038e)
  • TV Materyal Yüzeyi için color ve contentColor parametreleri colors olarak birleştirildi. (Ie69eb)
  • TV Materyalinde composable RadioButton kullanıma sunuldu. (I08690)
  • TV Materyalinde composable Switch kullanıma sunuldu. (I45e29)
  • TV Materyalinde composable Checkbox kullanıma sunuldu. (I6a45a)
  • TV Materyalinde etkileşim kuramayan yüzey kullanıma sunuldu. (Ic5f85)
  • Dahili göstergeler sunun. (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ü bu kayıtları içerir.

Yeni Özellikler

  • TV için optimize edilmiş Materyal 3 Kartı uygulamalarını ekleyin.
    • Temel Kart (I5b701)
    • ClassicCard, CompactCard ve WideClassicCard (I70471)
    • StandardCardLayout ve WideCardLayout (I33fae)
  • TV için optimize edilmiş Malzeme 3 Düğme uygulamaları ekleyin.

API Değişiklikleri

  • Carousel içindeki CarouselSlide ve slideCount, 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

  • Odak NavigationDrawer olduğunda DPAD düğmesini arkadan tut. (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ü bu kayıtları içerir.

API Değişiklikleri

  • tv-material içine composable Yan Gezinme Çekmecesi kullanıma sunuldu. Bu composable'ı nasıl kullanacağınızı öğrenmek için lütfen örneklere bakın. (I12c08)
  • TV Materyal 3'te composable Simge'yi tanıtın (I72db9)
  • tv-material için sınır, Parlaklık ve Ölçek gibi göstergelerle composable'ı kullanıma sunuyoruz. Bu özellikler, TV ekranında odaklanılan öğeyi net bir şekilde vurgulayan bileşenler oluşturmak için kullanılabilir. (I4a6d8), (Iceea1), (Iee4d4), (I79edf), (Icb376)
  • CarouselItem eklentisini, "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 yayınlandı. Sürüm 1.0.0-alpha04 bu kayıtları içerir.

Yeni Özellikler

  • Geç satır, sütun ve ızgaralarda, öğenin tamamının görüntülenmesini sağlamak için gerekirse pivot geçersiz kılınır. (11d7e40)
  • Farklı durumlara sekme renklerini özelleştirme imkânı 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 öğesi androidx.tv.material3 olarak yeniden adlandırılıyor ve paket yapısı androidx.tv.material3 altında birleştiriliyor. (I6ca52)
  • Atlı Karınca Göstergesi 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ın immersiveListItem (5dd5078)(b/263061052) ile birlikte focusable() veya clickable() değiştiricisini manuel olarak eklemesi gerekir
  • timeToDisplayMillis, Bant bileşeninde autoScrollDurationMillis olarak yeniden adlandırıldı. (431494a)
  • CarouselItem artık Carousel uygulamasında kullanılmak üzere kısıtlandı. (431494a)
  • Bant artık animasyon tanımı olarak EnterTransition ve ExitTransitions yerine ContentTransforms'yi kabul ediyor. (431494a)
  • Geçerli öğenin sabitlemesine olanak tanıyan bir yerel beste aracılığıyla geç listeler tarafından dağıtılan PinnableContainer API kullanıma sunuldu. (Ib8881, b/259274257, b/195049010)
  • TvLazyListLayoutInfo ve TvLazyGridLayoutInfo alanlarına mainAxisItemSpacing mülkü eklendi (I37765)

Hata Düzeltmeleri

  • Sekme satırını, 0 veya 1 sekme sayısını doğru işlediğinden emin olun. (I44009), (1c01525), (b/264018028)
  • TvLazyColumn boş TvLazyRow içerdiğinde odak-arama kilitlenmesi düzeltildi. (e11b4fe), (b/260299091)
  • clickable değiştiricisi artık ImmersiveList ile çalışıyor. (5dd5078), (b/263061052)
  • Geri tuşu, artık Öne Çıkan Bant'tan çıkmak için işlenip kullanılıyor. (84c138c)
  • Birden fazla hızlı tuşa basıldığında bantın odağı kaybolmuyor. (799489f)
  • Uzun tuşlara basıldığında bantta odak kaybolmuyor. (b2cf37e)
  • Bant slayt sayısı değiştiğinde ele alınan kilitlenmeler. (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ü bu kayıtları içerir.

Yeni Özellikler

  • TabRow artık kullanıcıların uygulamalarına üst gezinme çubukları eklemesine olanak veren deneysel bir API olarak kullanılabilir. 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 özel 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 yayınlandı. Sürüm 1.0.0-alpha02 bu kayıtları içerir.

Hata Düzeltmeleri

  • Odaklanılan arama alanını azaltarak TvLazyRows/TvLazyColumns koleksiyonunda gezinirken kaydırma performansı iyileştirildi.(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ü bu kayıtları içerir.

Yeni Özellikler

İlk alfa sürümü, aşağıdakiler de dahil olmak üzere TV kullanım alanları için bileşenlerin erken önizleme uygulamalarını içerir:

  • Satır, Sütun, Tablo gibi geç olmayan kaydırma kapsayıcılarının, kaydırma kapsayıcısının içeriği kaydırmasını sağlayarak odaklanılan öğenin TV ekranında aynı konumda kalmasını sağlamak için scrollableWithPivot değiştiricisi eklendi.
  • 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ı ekleniyor.
  • Kullanıcının otomatik kayan bir banner bandı oluşturmasına olanak tanıyan TV için composable Öne Çıkan Bant ekleme.
  • TV için composable Immersive List ekleme. Bu özellik, kullanıcının odaklanılan liste öğesine göre arka planı değiştiren bir Immersive Satır/Sütun/Tablo oluşturmasına olanak tanır.

Bilinen sorunlar

  • Kaydırma kapsayıcı odak kazandığında, ilk öğe varsayılan olarak odaklanmaz.
  • Bir TextField öğesine odaklanmak her zaman klavyeyi açmaz veya odağın başka alanlara gitmesini engelleyebilir.
  • LazyRows içeren bir LazyColumn içinde dikey olarak kaydırma yapmak kötü performans gösterir.