Wear'da Oluşturma

  
Farklı cihaz boyutlarını ve gezinme hareketlerini destekleyen işlevler sağlayarak Wear OS cihazlar için Jetpack Compose uygulamaları yazın.
Son Güncelleme Kararlı sürüm Sürüm Adayı Beta Sürümü Alfa sürümü
2 Temmuz 2025 1.4.1 - 1.5.0-beta05 -

Bağımlılıkları bildirme

Wear'a bağımlılık 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.wear.compose:compose-foundation:1.4.1"

    // For Wear Material Design UX guidelines and specifications
    implementation "androidx.wear.compose:compose-material:1.4.1"

    // For integration between Wear Compose and Androidx Navigation libraries
    implementation "androidx.wear.compose:compose-navigation:1.4.1"

    // For Wear preview annotations
    implementation("androidx.wear.compose:compose-ui-tooling:1.4.1")
    
    // NOTE: DO NOT INCLUDE a dependency on androidx.compose.material:material.
    // androidx.wear.compose:compose-material is designed as a replacement
    // not an addition to androidx.compose.material:material.
    // If there are features from that you feel are missing from
    // androidx.wear.compose:compose-material please raise a bug to let us know.
}

Kotlin

dependencies {
    implementation("androidx.wear.compose:compose-foundation:1.4.1")

    // For Wear Material Design UX guidelines and specifications
    implementation("androidx.wear.compose:compose-material:1.4.1")

    // For integration between Wear Compose and Androidx Navigation libraries
    implementation("androidx.wear.compose:compose-navigation:1.4.1")
    
    // For Wear preview annotations
    implementation("androidx.wear.compose:compose-ui-tooling:1.4.1")

    // NOTE: DO NOT INCLUDE a dependency on androidx.compose.material:material.
    // androidx.wear.compose:compose-material is designed as a replacement
    // not an addition to androidx.compose.material:material.
    // If there are features from that you feel are missing from
    // androidx.wear.compose:compose-material please raise a bug to let us know.
}

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.

Yeni sorun oluşturma

Daha fazla bilgi için Sorun İzleyici belgelerini inceleyin.

Wear Compose sürüm 1.5

Sürüm 1.5.0-beta05

2 Temmuz 2025

androidx.wear.compose:compose-*:1.5.0-beta05 iptal edilir. 1.5.0-beta05 sürümü bu commit'leri içerir.

Hata Düzeltmeleri

  • Modifier.edgeSwipeToDismiss kullanımını netleştirmek için doküman güncellendi (I78cb5)
  • Tembel listelerde SwipeToReveal ile birden fazla gösterilen öğenin gösterilebilmesi hatası giderildi (I1d4f6).
  • TransformingLazyColumn'daki kapsayıcı şekiller artık içeriklerin kırpılmasını önlemek için ölçeklendiriliyor. (I9221a)
  • Saat/dakika/saniye veya yıl/ay/gün için TimePicker ve DatePicker etiketleri artık ekran okuyucular için başlık semantiğine sahip (I77d8b)
  • Belirsiz CircularProgressIndicator (Iaf0bb) animasyonunda döngüler arasındaki duraklatma kaldırıldı.
  • Öğeler kaldırıldığında TransformingLazyColumn içindeki animasyon hatası düzeltildi. (I73034)
  • Öğeler kaldırıldığında TransformingLazyColumn içindeki bağlantı öğelerinin işlenmesi düzeltildi. (I841a8)
  • PickerGroup artık otomatik ortalama özelliği etkinleştirildiğinde ve seçilen (ortalanmış) seçici değiştirildiğinde seçicileri yatay olarak animasyonlandırıyor. (Ic82c4)

Sürüm 1.5.0-beta04

18 Haziran 2025

androidx.wear.compose:compose-*:1.5.0-beta04 iptal edilir. 1.5.0-beta04 sürümü bu commit'leri içerir.

Hata Düzeltmeleri

  • TransformingLazyColumn uygulamasında, ekrana sığan içeriğin artık ekranın üst kısmından doğru şekilde hizalanmasını sağlayan düzen hatası düzeltildi (I80115).
  • TransformingLazyColumn içeren bir listede en alta kaydırıldığında alttaki öğenin yanlış ölçeklenmesine neden olan sorun düzeltildi.EdgeButton Kaydırma ilerleme durumu artık düzen geri yüklenirken gradyan inişini takip ediyor. (Iea375)
  • TransformingLazyColumn artık arka plan boyayıcısının içindeki öğe yüksekliğini okuyor. Bu sayede özel TransformationSpecs, şekil değiştirme uygulayabiliyor. (I022f0)
  • SwipeToReveal artık gösterilen işlemleri dikey olarak doğru şekilde ortalıyor. (I4419b)
  • Hem görünüm hem de oluşturma ekranı kullanılıyorsa SwipeToReveal özelliğinin kaydırarak kapatma ile düzgün çalışmasını engelleyen hata düzeltildi. (I5dc0e)
  • Kaydırma sırasında SwipeToReveal işlemlerinin dikey olarak kaydırılmış şekilde çizilmesine neden olan hata düzeltildi. (I29444)
  • AlertDialog, ConfirmationDialog, OpenOnPhoneDialog ve SwipeToReveal artık ekran boyutunun yüzdesi olarak hesaplanan dolguları ve boyutları yukarı yuvarlıyor. (I76367)
  • ButtonDefaults.outlinedButtonBorder artık etkinleştirilmiş/devre dışı bırakılmış durum değişikliklerinden sonra güncelleniyor size(If2ddd)
  • Pager ve ScreenScaffold içeren karmaşık ekranlarda EdgeButton yüksekliğinde oluşan hata düzeltildi. (I946e3)
  • Yer tutucu animasyonlarının durmasına neden olabilecek bir yarış durumu düzeltildi. (I53530)
  • Tuval'e çizim yaparak HorizontalPageIndicator ve VerticalPageIndicator performansını iyileştirin. (Ifae1e)
  • EdgeButton'ın şekli, üç nokta ile ana hattı oluşturan daireler arasındaki geçişleri yumuşatacak şekilde iyileştirildi. (I7721e)
  • LevelIndicator'da, gereksiz yeniden oluşturmalar nedeniyle animasyonların durmasına neden olan bir hata düzeltildi. (I45d08)

Sürüm 1.5.0-beta03

4 Haziran 2025

androidx.wear.compose:compose-*:1.5.0-beta03 iptal edilir. 1.5.0-beta03 sürümü bu commit'leri içerir.

API Değişiklikleri

  • OpenOnPhoneDialog artık TalkBack'te yalnızca mesaj metnini okuyor ve simge anlamlarını atlıyor. OpenOnPhoneDialogDefaults, icon() öğesinden iconContentDescription ve contentDescription parametrelerini kaldıracak şekilde güncellendi. Ayrıca, ConfirmationDialogDefaults artık SuccessIcon ve FailureIcon composable'larında değiştirici parametreler içeriyor. (Id2ae2)

Hata Düzeltmeleri

  • SurfaceTransformation parametrelerinin etkisini uygulama sırası değiştirildi. Daha önce, Wear Material3 bileşenlerine uygulanan dönüştürme işlemleri şu şekilde yapılıyordu: arka plan boyama, kapsayıcı dönüştürme, içerik dönüştürme. Şimdi ilk 2 değer ters çevriliyor ve aralarına iletilen değiştirici uygulanıyor. Bu nedenle, kapsayıcı dönüşümlerinden etkileniyor. Bu düzeltme, dönüşüm parametresini kullanan bir TLC'deki öğelerle yer tutucu ışıltı efekti kullanma gibi durumları düzeltir. (I786cf)
  • RevealState.Saver, etkinlik veya işlem yeniden oluşturulduğunda SwipeToReveal durumunu geri yüklemek için kullanılmak üzere eklendi. rememberRevealState işlevi artık varsayılan olarak bu koruyucuyu kullanıyor. (Ie0ecb)
  • SwipeToReveal birincil ve ikincil işlem düğmeleri varsayılan olarak ButtonDefault.Height olmalıdır (daha uzun düğmelerde maksimum yüksekliği doldurmalarına neden olan hata düzeltildi). (Ibfba1)
  • Sağa kaydırma hareketi yapıldığında etkileşimde bulunulan son bileşeni sıfırlamak için SwipeToReveal değiştirildi. (Ia8450)
  • Kaydırmanın bitiş konumu, gösterme ve gösterilen bağlantıları arasında olduğunda ve gösterme bağlantısına daha yakın olduğunda SwipeToReveal, Revealing durumuna ayarlanacak şekilde değiştirildi. (If4458)
  • Şimdi ButtonGroup'nın içeriği, sağdan sola düzeninde düzgün şekilde ters çevriliyor (Ib378d)
  • AnimatedText artık sağdan sola metin yönünü destekliyor (I4533c)
  • TransformingLazyColumn artık alttaki öğe kaldırıldığında öğeleri doğru şekilde yeniden boyutlandırıyor (Idacab)
  • TransformingLazyColumn artık yalnızca bir ölçüm geçişi yapıyor. Bu da kare sürelerini azaltarak performansı artırıyor. (I501a1)

Sürüm 1.5.0-beta02

20 Mayıs 2025

androidx.wear.compose:compose-*:1.5.0-beta02 iptal edilir. 1.5.0-beta02 sürümü bu commit'leri içerir.

Hata Düzeltmeleri

  • Foundation, Material ve Material3 kitaplıkları için güncellenen temel profiller. (I53f06)
  • TransformingLazyColumn içinde, alttaki öğe kaldırıldığında öğelerin yeniden boyutlandırılmasına neden olan hata düzeltildi. (Idacab)
  • TransformingLazyColumn ile ilgili bir hata düzeltildi. Bu hatada liste, listenin en üstünde veya en altında takılıyordu. (I49d00)
  • TalkBack'in altındaki OpenOnPhoneDialog, simge içeriği açıklaması yerine eğri metni duyurmalıdır. (I4efe8)
  • SwipeToReveal'da, hasPartiallyRevealedState "false" olarak ayarlandığında RevealState.currentValue'da yanlış bağlantı bildirilmesine neden olan hata düzeltildi. (I9c7cf)
  • SwipeToReveal geri alma düğmeleri artık varsayılan olarak ButtonDefaults.Height. (I1f6c8)
  • BasicSwipeToDismissBox, Canvas'ın scrim çizmek için kullanımı ortadan kaldırılarak performans iyileştirildi. (I68f2c)
  • Kaydırma Çubuğu'nda, duyurulan yüzdenin güncellemelerden sonraki değerle eşleşmemesine neden olan erişilebilirlik hatası düzeltildi (I91146).
  • placeholderShimmer uygulamasındaki bir hata düzeltildi. (Iee39b
  • TransformingLazyColumn hesaplaması %30 oranında optimize edilerek performans artırıldı.ScrollProgress (I4c4cb)

Sürüm 1.5.0-beta01

7 Mayıs 2025

androidx.wear.compose:compose-*:1.5.0-beta01 iptal edilir. 1.5.0-beta01 sürümü bu commit'leri içerir.

Wear OS için Compose'un 1.5.0-beta01 sürümü, kitaplığın bu sürümünün özelliklerinin tamamlandığını ve API'nin (deneysel olarak işaretlenen yerler hariç) kilitlendiğini gösterir.

Wear Compose 1.5.0-beta01, Material 3 Expressive adlı yeni kullanıcı arayüzü tasarım sistemini destekleyen Wear Compose Material3 kitaplığını içerir. Uygulamalarda yeni görsel tasarımı kullanmak ve yeni bileşenlerden yararlanmak için Material'dan Material 3'e yükseltmeniz önerilir:

  • MaterialTheme ile tasarımlarınıza hem derinlik hem de çeşitlilik katmak için güncellenmiş ve genişletilmiş renk şemaları, yazı tipleri ve şekiller.
  • Kadran renkleriyle eşleşen bir renk şeması oluşturmak için uygulamanızda otomatik olarak renk teması oluşturma.
  • Yeni bileşenler varsayılan olarak daha büyük ekran boyutlarına otomatik olarak uyum sağlar
  • Şekil Dönüşümü: IconButton, TextButton, IconToggleButton ve TextToggleButton gibi yuvarlak düğme bileşenleri, basıldığında veya işaretlendiğinde animasyonlu varyasyonları destekler.
  • EdgeButton: Ekranın alt kısmı için tasarlanmış özel şekilli, kenarlara yakın yeni bir düğme.
  • İskeleler: Ekranın yapısını oluşturmak ve ScrollIndicator ile TimeText animasyonlarını koordine etmek için AppScaffold ve ScreenScaffold tanıtılıyor.
  • Düğmeler: Esnek, tek yuvalı kapsayıcılar ve simge ve etiket içeren düğmeler için çok yuvalı varyasyonlarla çok sayıda stadyum şekilli düğme desteklenir. Açma/kapatma düğmeleri gerektiğinde CheckboxButton ve SwitchButton, seçim düğmesi olarak ise RadioButton kullanılır (Açma/kapatma ve seçim düğmelerinin "bölünmüş" varyantları da sağlanır).
  • ButtonGroup: Dokunulduğunda şekil değiştiren, bir satırda yer alan etkileyici bir düğme grubu uygular.
  • AlertDialog varyasyonları, tamam/iptal düğmelerini veya EdgeButton simgesini destekler.
  • ConfirmationDialog, zaman aşımıyla birlikte bir mesaj görüntülemek için kullanılabilir. Başarı, hata ve telefonda açma varyasyonları için özel animasyonları destekler.
  • Seçiciler: Kendi seçici ekranlarınızı oluşturmak için seçici ve PickerGroup bileşenlerinin yanı sıra TimePicker ve DatePicker varyantları da desteklenir.
  • ProgressIndicators - dairesel ve doğrusal ilerleme göstergeleri desteklenir (CircularProgressIndicator, segmentlere ayrılmış ve belirsiz varyasyonlara sahiptir).
  • Kartlar: Başlık, saat, alt başlık veya içerik yuvaları içeren kartlar için özel düzenler sunan TitleCard dahil olmak üzere çeşitli kart varyasyonları mevcuttur. TitleCard, karttaki bilgilerin anlamını güçlendirmek için resim arka planı da verilebilir.
  • Sayfalayıcılar: HorizontalPagerScaffold, VerticalPagerScaffold ve AnimatedPage bileşenleri HorizontalPageIndicator ve VerticalPagerIndicator animasyonlarını koordine eder. HorizontalPager ve VerticalPager, Wear Compose Foundation kitaplığında yayınlandı.
  • Yer tutucular: Geçici içeriklerin bulunmadığı durumlarda bir bileşenin üzerinde iskelet şekli çizer.
  • Kaydırma çubukları ve adım çubukları: Hem kaydırma çubukları hem de adım çubukları, kullanıcıların bir değer aralığından seçim yapmasına olanak tanır. Kaydırma çubukları daha kompakttır ve bölümlere ayrılabilir. Adımlayıcı ise genellikle StepperLevelIndicator ile eşleştirilen tam ekran bir bileşendir.
  • SwipeToReveal: Bir composable, sağdan sola kaydırıldığında ek işlemler eklemek için kullanılır.

Ayrıca Wear Compose Foundation 1.5.0-beta01 şu yeni bileşenleri içerir:

  • TransformingLazyColumn - Ölçeklendirme ve şekil değiştirme animasyonlarını destekleyen, dikey olarak kaydırılan tembel bir liste
  • Hiyerarşik odak grupları: Bir uygulamadaki composable'ları açıklama eklemek, kompozisyonun etkin bölümünü takip etmek ve odağı koordine etmek için kullanılır.
  • Sayfalayıcılar: Performansı artırmak ve Wear OS yönergelerine uymak için Wear'a özel geliştirmelerle Compose Foundation bileşenleri üzerine oluşturulmuş HorizontalPager ve VerticalPager bileşenleri.

API Değişiklikleri

  • Hierarchical Focus API güncellendi: Modifier.hierarchicalFocus, Modifier.hierarchicalFocusGroup olarak yeniden adlandırıldı ve geri çağırma parametresi kaldırıldı; Modifier.hierarchicalFocusRequester'nın FocusRequester parametresiyle aşırı yüklenmesi kaldırıldı; bileşenlerin hangi ekranın etkin olduğunu bildirebilmesi ve kontrol edebilmesi için yeni bir CompositionLocal, LocalScreenIsActive oluşturuldu. (I5ff7c).
  • Wear Compose Foundation'daki SwipeToReveal API'lerinin desteği sonlandırıldı. Bunun yerine Wear Compose Material ve Wear Compose Material3'teki SwipeToReveal API'leri kullanılacak. API'leri kullanmaya devam etmek için lütfen Wear Foundation SwipeToReveal içe aktarmalarını Wear Compose Material/ Wear Compose Material3 içe aktarmalarıyla değiştirin. (Ia147d).
  • Wear Compose Material3 SwipeToReveal Foundation bağımlılıkları material3 paketine taşındı. Örneğin, RevealValue, RevealDirection, RevealActionType, RevealState, rememberRevealState. Geliştiriciler, bu sınıfların ve işlevlerin içe aktarma işlemlerini androidx.wear.compose.foundation yerine androidx.wear.compose.material3 olarak değiştirmelidir. (I640e6).
  • Wear Compose Material3 SwipeToReveal API'si aşağıdaki şekilde güncellendi: SwipeToReveal composable'a primaryAction, onFullSwipe, secondaryAction, undoPrimaryAction, undoSecondaryAction ve hasPartiallyRevealedState parametreleri eklendi; positionalThreshold ve animationSpec öğelerini RevealState'den özelleştirme özelliği kaldırıldı; lastActionType, revealThreshold ve genişlik RevealState'den kaldırıldı; RevealState oluşturucusu, sabitleme noktaları yerine RevealDirection kabul edecek şekilde değiştirildi; createRevealAnchors, sabitleme noktaları ve bidirectionalAnchors işlevleri kaldırıldı; SwipeToRevealScope işlevleri primaryAction, secondaryAction, undoPrimaryAction ve undoSecondaryAction, PrimaryActionButton, SecondaryActionButton, UndoActionButton olarak yeniden adlandırıldı ve Composable işlevlerine dönüştürüldü; RevealActionType dahili olarak işaretlendi. (I885d0).
  • Ayrıca SwipeToReveal API'de aşağıdaki güncellemeler yapıldı: onFullSwipe, onSwipePrimaryAction olarak yeniden adlandırıldı; SwipeToRevealNonAnchoredSample, hasPartiallyRevealedState parametresinin kullanımını belirtecek şekilde yeniden adlandırıldı; varsayılan değer, düğmenin varsayılan yüksekliği olduğundan ve daha büyük yükseklik bir değiştirici kullanılarak ayarlanabileceğinden actionButtonHeight kaldırıldı; SmallActionButtonHeight, SwipeToRevealDefaults'den kaldırıldı; RevealValue ve RevealDirection oluşturucularındaki değer parametresi özel yapıldı. (I465ce).

Hata Düzeltmeleri

  • ScreenScaffold öğesinin EdgeButton işleme şekli düzeltildi. Böylece, TransformingLazyColumn öğesi kaldırıldıktan sonra EdgeButton öğesi animasyonla yerine yerleştiriliyor. (I6d366).
  • Compose kitaplıklarındaki Wear Compose bağımlılıkları 1.8.0 sürümüne güncellendi. (I2ef3f).
  • Belirsiz CircularProgressIndicator hareketini, geçici olarak gerilemeyecek şekilde güncelledi. (Ieddb1).
  • Geri kaydırma işleminden sonra odağın doğru şekilde değişmemesi nedeniyle döner girişin başarısız olmasına neden olan SwipeDismissableNavHost hata düzeltildi (Bu, API 36 ve sonraki sürümler için geçerliydi ve tahmini geri özelliğini kullanıyordu). (Ieddb1).
  • Hierarchical Focus API (Idf2ff) için değiştirilmiş belgeler.
  • containerPainter ve disabledContainerPainter öğelerinin containerColor ve disabledContainerColor öğelerini nasıl geçersiz kıldığını belirtmek için Düğme ve Kart dokümanları güncellendi (I4a453).
  • Önceki sürümde, gezinme sırasında kendi iş parçacıklarını yöneten uygulamalarda sorunlara neden olduğu için BroadcastReceiver öğesini bir çalışan iş parçacığına taşıyan TimeText değişikliği geri alındı. (I34d02).
  • Picker örnekleri, gereksiz hatırlama çağrılarını kaldırmak ve bunun yerine en son contentDescription lambda işlevini hatırlamak için Picker'da rememberUpdatedState kullanacak şekilde güncellendi. (Icb5b1).
  • TimePicker ve DatePicker'daki metin stilleri, yazı tipi değişikliklerinin artık kesmeye neden olmayacak şekilde güncellendi. (I26194).
  • ListHeader ve ListSubHeader artık varsayılan metin hizalamasını sırasıyla ortaya hizalı ve başlangıca hizalı olarak ayarlıyor. (I78339).
  • Özel erişilebilirlik işlemlerini duyurmak için Foundation ve Material Swipe to Reveal örnekleri ve demoları güncellendi (özel işlemler, SwipeToReveal composable'ın kendisinde değil, içerikte semantik olarak eklenmelidir). (Ie92a3).
  • EdgeButton içeriğinde varsayılan MaxLines değeri, boyutuna göre güncellendi. Artık çok küçük boyut için 1, küçük ve orta boyut için 2, büyük boyut için ise 3 olarak ayarlanıyor. (Ie35f6).
  • Gözlemcinin yalnızca bir kez kaydedilmesi için LocalReduceMotion basitleştirildi. Böylece performans iyileştirildi. (Ib1979).
  • Performansı artırmak için ScrollIndicator'daki yeniden çizim sayısı en aza indirildi. (Ia7a67).
  • TransformingLazyColumn'da, EdgeButton tam yüksekliğine ulaştığında listedeki en üstteki görünür öğenin doğru şekilde ölçeklenmemesine neden olan hata düzeltildi. (I30580).

Sürüm 1.5.0-alpha14

23 Nisan 2025

androidx.wear.compose:compose-*:1.5.0-alpha14 iptal edilir. 1.5.0-alpha14 sürümü bu commit'leri içerir.

API Değişiklikleri

  • Foundation SwipeToReveal üzerindeki tüm Material SwipeToReveal bağımlılıkları Material paketine taşındı (ör. RevealValue, RevealDirection, RevealActionType, RevealState, rememberRevealState). Geliştiriciler, bu sınıfların ve işlevlerin içe aktarma işlemlerini androidx.wear.compose.foundation yerine androidx.wear.compose.material olarak değiştirmelidir. (Ib7cb8)
  • HierarchicalFocusCoordinator API'si, composable yerine değiştirici olacak şekilde güncellendi.
  • Taşıma notları:
    • HierarchicalFocusCoordinator(function, content), content veya kapsayan composable'a Modifier.hierarchicalFocus(function()) eklenerek değiştirilebilir.
    • ActiveFocusListener { if (it) focusRequester.requestFocus() }, Modifier.hierarchicalFocusRequester(focusRequester) eklenerek değiştirilebilir.
    • ActiveFocusListener öğesinin daha nadir kullanıldığı diğer durumlarda Modifier.hierarchicalFocus üzerinde yeni parametre kullanılabilir.
    • focusRequester(rememberActiveFocusRequester()), hierarchicalFocusRequester() ile değiştirilebilir.
    • val focusRequester = rememberActiveFocusRequester(), remember { FocusRequester() } ile değiştirilebilir ve Modifier.hierarchicalFocusRequester(focusRequester) eklenebilir. (Ie319a)

Hata Düzeltmeleri

  • Durum değişikliğini tetiklemek için kaydırma hareketlerinin aşması gereken hız eşiği şu bileşenler için artırıldı: SwipeToReveal, BasicSwipeToDismissBox ve SwipeDismissableNavHost (yalnızca SwipeDismissableNavHost için API 35 ve öncesi). (If47bf)
  • TransformingLazyColumn'ya yeni öğeler eklendiğinde oluşan animasyon sorunu düzeltildi. (I589b2)

Sürüm 1.5.0-alpha13

9 Nisan 2025

androidx.wear.compose:compose-*:1.5.0-alpha13 iptal edilir. 1.5.0-alpha13 sürümü bu commit'leri içerir.

API Değişiklikleri

  • Kotlin 2.0 ile yayınlanan projelerin kullanılabilmesi için KGP 2.0.0 veya daha yeni bir sürüm gerekir (Idb6b5).
  • targetPage mülkü PagerState hesabına eklendi (I4de8b)

Hata Düzeltmeleri

  • Tahmine dayalı geri gitme sırasında gereksiz yeniden oluşturmayı önler. (Iecd6d)
  • ScrollInfoProvider'nın isScrollable özelliğinin geçerli değeri döndürmesi düzeltildi. (Icbfb8)

Sürüm 1.5.0-alpha12

26 Mart 2025

androidx.wear.compose:compose-*:1.5.0-alpha12 iptal edilir. 1.5.0-alpha12 sürümü bu commit'leri içerir.

API Değişiklikleri

  • SwipeToReveal gestureInclusion öğesinin varsayılan uygulamasını, yalnızca bileşenin durumu Covered ise hareketleri yoksayacak şekilde iyileştirin. (I7e3d6)
  • SwipeToReveal için bidirectionalGestureInclusion işlev yerine değer olarak değiştirildi ve gestureInclusion içinde edgeZoneFraction parametresine @FloatRange eklendi. (Ica7c3)

Hata Düzeltmeleri

  • Sınıf yerine nesne döndürmek için SwipeToReveal bidirectionalGestureInclusion değerini değiştirin. (I29597)
  • RoboElectric altında testler çalıştırılırken dokunsal geri bildirimin kullanımı devre dışı bırakıldı. (I58bd1)
  • İçerik ile işlem düğmeleri arasındaki SwipeToReveal dolguları ve işlem düğmelerinin simgesi ile metni arasındaki dolguyu güncelleyin. (Ic46cb)

Sürüm 1.5.0-alpha11

12 Mart 2025

androidx.wear.compose:compose-*:1.5.0-alpha11 iptal edilir. 1.5.0-alpha11 sürümü bu commit'leri içerir.

API Değişiklikleri

  • PagerState güncellendi. Temel sınıf olarak Compose Foundation PagerState kaldırıldı ve currentPage, currentPageOffsetFraction ve pageCount özellikleri eklendi. GestureInclusion arayüzü güncellendi ve yöntem ignoreGestureStart olarak yeniden adlandırıldı. (I4ae07)
  • requireOffset değerini SwipeToDismissBoxState değerine ekleyerek SwipeToDismissBoxState değerinde bir dengeleme elde etmenizi öneririz. (I21042)
  • CurvedModifier.semantics eklendi. Başlangıçta içerik açıklaması ve geçiş dizini destekleniyor (I0b093)
  • Eğri semantiğin devre dışı bırakılabileceği bir yöntem sunmak için CurvedModifier.clearAndSetSemantics öğesini ekledik. CurvedText, içerik açıklamasını varsayılan olarak metin şeklinde okumaya devam eder ancak timeTextCurvedText ve timeTextSeparator artık içeriklerini duyurmaz. (I4b568)
  • HorizontalPager'daki kaydırma hareketlerinin varsayılan işlenmesi PagerDefaults.gestureInclusion olarak yeniden adlandırıldı. Varsayılan davranış artık yalnızca ilk sayfanın sol kenarında başlayan kaydırma hareketlerini ve yalnızca TalkBack devre dışıyken yok saymaktır. Diğer durumlarda, varsayılan davranış, kaydırma hareketlerinin sayfalayıcı tarafından yok sayılmamasıdır. Bu nedenle, kaydırarak kapatma işleyicilerinde kullanılamazlar. (Iee486)
  • rotaryScrollable API'si için döner kaydırma eklendi. Aşırı kaydırma ve iç içe kaydırma, rotaryScrollable kaydırma davranışına eklendi. Bu değişiklik, dokunarak kaydırma ve döner kaydırma arasında eşit düzeyde aşırı kaydırma ve iç içe kaydırma işlevselliği sağlayacaktır. (I71926)
  • SwipeToReveal'ya kenardan kaydırma bölgesi desteği eklendi. Foundation SwipeToReveal'ın varsayılan davranışı artık hareket kenardan başladığında kaydırmaya izin vermemektir. Material3 SwipeToReveal'ün varsayılan davranışı artık SwipeDirection tek yöne ayarlandığında hareket kenardan başladığında kaydırmaya izin vermemektir. (I32ef0)
  • TLC artık ilk ve son öğeleri merkeze yerleştirmek yerine varsayılan olarak boş contentPadding kullanıyor. (I77ab7)

Hata Düzeltmeleri

  • Wear Compose kitaplıkları, Kotlin 2.0 derleyicisine güncellendi. (I2de79)
  • Temeldeki kavisli LetterSpacing örneği düzeltildi. (Iebf7c)

Sürüm 1.5.0-alpha10

26 Şubat 2025

androidx.wear.compose:compose-*:1.5.0-alpha10 iptal edilir. 1.5.0-alpha10 sürümü bu commit'leri içerir.

API Değişiklikleri

  • SwipeToRevealDefaults herkese açık hâle getirin. (I0c34c)
  • HorizontalPager içindeki swipeToDismissEdgeZoneFraction parametresini değiştirdik. Bunun yerine, gerekli kaydırarak kapatma davranışını elde etmek için kullanılabilecek yeni bir parametre (gestureInclusion) kullanıma sunuldu. gestureInclusion, sonraki kaydırma etkinliğinin devam edip etmeyeceğine karar veren bir GestureInclusion örneğini alır. Bir harekete izin vermek, Pager'ın bu hareketi kullandığı anlamına gelir. Aksi takdirde, hareket başka bir yerde (ör. kaydırarak kapatma işleyicisi) işlenir. Yeni varsayılan davranış, sayfalayıcıdaki ilk sayfanın en sol kenarında hareketlere izin vermemek ve bu nedenle bu bölgede kaydırarak kapatmaya izin vermektir. Diğer tüm sayfalar, Pager'ın tüm hareketleri kullanmasına izin verir. Bu nedenle, bu sayfalarda kaydırarak kapatma işlemi tetiklenemez. Tüm sayfalarda kaydırarak kapatma davranışını elde etmek için mevcut sayfayı yok sayan özel bir GestureInclusion örneği sağlamanız yeterlidir (PagerDefaults.disableLeftEdgeOnFirstPage bölümüne bakın). Burada tanıtılan bir diğer önemli değişiklik ise Pager bileşeninin artık varsayılan olarak tam ekran olmamasıdır. Bu davranışı elde etmek için bunun yerine Modifier.fillMaxSize() ekleyin. (I9d3aa)
  • Kaydırarak gösterme API'sinde(If5999) createAnchors öğesinin adını createRevealAnchors olarak değiştirdik.
  • RevealScope, kaydırarak gösterme API'sinden kaldırıldı. (Ie4ad5)
  • Kaydırarak gösterme API'sinde Revealing ve Revealed parametrelerini RevealValue öğesinden kaldırdık. (I8dbc5)
  • Kaydırarak göster API'sinde SwipeDirection öğesinin adını RevealDirection olarak değiştirdik. (I7472f)
  • SwipeToReveal işlevinin rememberRevealState işlevinin positionalThreshold parametresinin imzasını değiştirdik. (I29c0a)
  • ScalingLazyColumn, TransformingLazyColumn ve ScreenScaffold'ye yeni bir overscrollEffect parametresi ekledik. (I0cee8)
  • PagerDefaults#snapFlingBehaviour kullanılırken pagerSnapDistance parametresi, Pager'ın kaydırılması gereken maksimum sayfa sayısını belirtmek için kullanılabilecek bir Int parametresi maxFlingPages ile değiştirildi. (I8cfc0)
  • Wear Pager artık Compose Foundation PagerScope yerine kendi PagerScope kullanıyor. (I9195b)
  • Eğri metin (I1c936) özelliğine lineHeight desteği eklendi.
  • initialAnchorItemIndex ve initialAnchorItemOffset, TransformingLazyColumnState'ye, rememberTransformingLazyColumnState ise TransformationLazyColumn'ye eklendi. Böylece ilk kaydırma konumu TransformationLazyColumn'de belirtilebilir. (I0a0d5)
  • runWithTimingDisabled yerine runWithMeasurementDisabled kullanın. Bu durum, davranışı daha net bir şekilde tanımlar: Tüm metrikler duraklatılır. Ayrıca, runWithMeasurementDisabled işlevi satır içi olduğundan erişimi açmak için yeniden tanımlamak mümkün olmadığından MicrobenchmarkScope üst sınıfını kullanıma sunun. (I9e23b, b/389149423, b/149979716)
  • TransformingLazyColumnItemScrollProgress üzerinde kutu oluşturmayı önlemek için API'ye TransformingLazyColumnItemScrollProgress.Unspecified ekledik. (I0835d)

Hata Düzeltmeleri

  • CurvedTextStyle için Kdoc'u iyileştirin (Id45e3)
  • SwipeableV2 (SwipeToReveal uygulamasının bir parçası) herkese açık yerine dahili hale getirildi ancak kitaplık grubuyla sınırlandırıldı. (Idbb94)
  • HierarchicalFocusCoordinator (I1ce54, b/395548918) için testler ekledik.
  • Wear Compose temel örneklerinde SwipeToReveal ile ilgili iyileştirmeler yaptık. (I5f307)
  • Erişilebilirlik için TransformingLazyColumn'te verticalScrollAxisRange ile ilgili kaydırma ekseni semantik verilerini düzeltme (I68123)
  • Gereksiz arka plan iş parçacıklarını kaldırarak Wear4+ cihazlarda döner titreşim performansını iyileştirme (I39cfe)
  • SwipeDismissableNavHost, yalnızca API 36 ve sonraki sürümlerde PredictiveBackNavHost kullanılacak şekilde değiştirildi. (I59bed)
  • reduce motion (hareketi azalt) ayarına erişirken kilitlenmeyi önleyecek bir koruma eklendi. (I01e2c)
  • Jank'ı azaltmak için TransformingLazyColumn'da önceden getirme özelliğini uyguladık (Icca88)

Sürüm 1.5.0-alpha09

29 Ocak 2025

androidx.wear.compose:compose-*:1.5.0-alpha09 iptal edilir. 1.5.0-alpha09 sürümü bu commit'leri içerir.

API Değişiklikleri

  • CurvedTextStyle üzerinde harf aralığını saat yönünde harf aralığı ve saat yönünün tersine harf aralığı olarak ayırdık. Bu, saat yönünde harfler taban çizgisinden dışa doğru açılırken saat yönünün tersine harflerin içe doğru açılması (bu nedenle daha büyük harf aralığı gerekir) nedeniyle gereklidir (I4b848).
  • CompositionLocal LocalReduceMotion, ReduceMotion nesnesi yerine Boole değeri döndürecek şekilde basitleştirildi. ReduceMotion arayüzü artık kullanımdan kaldırıldı. LocalReduceMotion.current.enabled() gibi önceki çağırmalar LocalReduceMotion.current (I4937f) ile değiştirilebilir.
  • PagerDefaults içinde snapAnimationSpec, SnapAnimationSpec olarak yeniden adlandırıldı. (I20c9a)

Sürüm 1.5.0-alpha08

15 Ocak 2025

androidx.wear.compose:compose-*:1.5.0-alpha08 iptal edilir. 1.5.0-alpha08 sürümü bu commit'leri içerir.

API Değişiklikleri

  • Tüm Wear Compose kitaplıklarını "açık API" moduna güncelledik. (Iebf9f)
  • Sayfalayıcıya ait snap animasyon parametresini PagerDefaults'ya dahil ettik. (Ifff64)
  • SwipeToDismissBoxState öğesine bir ofset parametresi ekledik. (I586bd)

Hata Düzeltmeleri

  • Döner platform dokunma teknolojisi, V (Idb03e) sürümünden sonraki Wear OS sürümlerinde kullanılabiliyor.

Sürüm 1.5.0-alpha07

11 Aralık 2024

androidx.wear.compose:compose-*:1.5.0-alpha07 iptal edilir. 1.5.0-alpha07 sürümü bu commit'leri içerir.

API Değişiklikleri

  • TransformingLazyColumnState artık sabit öğe dizinlerine göre mevcut kaydırma ilerleme durumunu gözlemlemenin bir yolunu sunuyor. (I72b01)
  • Yeni Modifier.animateItem özelliğine sahip öğeler eklenirken, kaldırılırken ve taşınırken TransformingLazyColumn'ya animasyonlar ekledik. (Iecb9c)
  • TransformingLazyColumn artık beforeContentPadding ve afterContentPadding değerlerini gösteriyor. (Iccd5f)
  • TransformingLazyColumn artık, TransformingLazyColumn içine yerleştirildiğinde otomatik olarak şekil değiştirmek için hangi bileşenlerin (ör. Material 3'teki Card ve Button) kullanılabileceğini belirten yerel LocalTransformingLazyColumnItemScope kompozisyonunu sunuyor. Arayanlar, yeni TransformExclusion sarmalayıcısını kullanarak otomatik dönüştürmeyi devre dışı bırakabilir. (I1652f)

Hata Düzeltmeleri

  • U ve sonraki sürümleri hedefleyen cihazlarda döner hareket için minimum ve maksimum fırlatma hızlarını güncelledik. (I33559)
  • TransformingLazyColumn içindeki bir öğe composable içermediğinde meydana gelen kilitlenme sorunu düzeltildi (Idb99d).
  • Android Vanilla ice cream'de ScrollFeedbackProvider döner dokunsal geri bildirim desteği eklendi. (Ibc553)
  • Dikey kaydırma sırasında yanlışlıkla kaydırma işleminin tetiklenme olasılığını azaltmak için SwipeToReveal kullanılırken dokunma toleransını artırdık. (Ic0672)
  • SwipeDismissableNavHost, API 35 ve sonraki sürümlerde kullanılabildiğinde PredictiveBackHandler'ü kullanacak şekilde güncellendi. Bu durumda yeni animasyonlar uygulanır. (I08c11)

Sürüm 1.5.0-alpha06

13 Kasım 2024

androidx.wear.compose:compose-*:1.5.0-alpha06 iptal edilir. 1.5.0-alpha06 sürümü bu commit'leri içerir.

API Değişiklikleri

  • Artık gerekli olmayan orientation parametresini kaldırarak PagerState için ScrollInfoProvider öğesini basitleştirdik. Yeni davranış, TimeText öğesinin hem yatay hem de dikey sayfalama için yerinde kalmasını sağlar. (I71767)
  • TransformingLazyColumn, önceki sürümlerde kullanıma sunulmuştu. Yeni ad olan TransformingLazyColumn lehine Wear'ın LazyColumn takma adlarını (TransformingLazyColumn'ye yönlendiriliyordu) kaldırıyoruz. Ayrıca TransformingLazyColumnVisibleItemInfo'nın height özelliğini de kaldırdık. Lütfen bunun yerine measuredHeight özelliğini kullanın. (I0ea1e)
  • PagerDefaults.snapFlingBehavior snapAnimationSpec, Tween spesifikasyonundan Spring spesifikasyonuna değiştirildi.(I10d02, b/349781047, b/303807950)
  • LocalReduceMotion CompositionLocal sürümünü kararlı sürüme (Ia6f32) yükselttik.

Hata Düzeltmeleri

  • Döner cihazlarda daha iyi semantik destek sağlamak için Modifier.rotaryScrollable özelliğini focusTargetWithSemantics kullanacak şekilde güncelledik. (Ief0a0)
  • Compose kitaplıkları için minimum API bağımlılığını 1.7.4 olarak güncelledik. (I88b46)
  • Kırpma hatasına geçici çözüm olarak TransformingLazyColumn içinde genişlik dönüştürme özelliği devre dışı bırakıldı. (I3dfb8)
  • TransformingLazyColumn ile aşırı kaydırma yapıldıktan sonra öğelerin kaybolmasına neden olan hata düzeltildi (Id7668).
  • TransformingLazyColumn için LazyLayoutSemantics özelliğini ekledik. (Ia8f56)

Sürüm 1.5.0-alpha05

30 Ekim 2024

androidx.wear.compose:compose-*:1.5.0-alpha05 iptal edilir. 1.5.0-alpha05 sürümü bu commit'leri içerir.

API Değişiklikleri

  • Bir öğeye kaydırmanın animasyonlu olabilmesi için TransformingLazyColumnState üzerinde animateScrollTo desteği ekledik. (I4097d)
  • Kaydırmayı bir sonraki ölçüme ertelemek için requestScrollTo on TransformingLazyColumnState işlevini ekledik. (I20a5e)
  • TransformingLazyColumn'da contentPadding desteği eklendi. (I3a69c)

Hata Düzeltmeleri

  • İçerik yüksekliği ekran yüksekliğinden kısa olduğunda TransformingLazyColumn karakterinin oluşturulmasıyla ilgili bir hata düzeltildi. (I6c3e1)
  • ScrollInfoProvder TransformingLazyColumn için artık ilk öğeyi doğru şekilde izliyor. (I1e4a3)
  • TransformingLazyColumnState artık durumunu (anchorItemIndex ve anchorItemScrollOffset) kaydediyor. (I3d265)

Sürüm 1.5.0-alpha04

16 Ekim 2024

androidx.wear.compose:compose-*:1.5.0-alpha04 iptal edilir. 1.5.0-alpha04 sürümü bu commit'leri içerir.

API Değişiklikleri

  • Wear Compose Foundation LazyColumnTransformingLazyColumn olarak yeniden adlandırdık. Böylece bu kitaplık ile Compose Foundation LazyColumn arasındaki fark daha net anlaşılacak. (I0608b)
  • Yatay/dikey çağrı cihazları için döner destek eklendi. Böylece kullanıcılar, döner giriş cihazlarını kullanarak çağrı cihazlarında gezinebilecek. (I9770d)
  • Yeni PagerDefaults simgesini, varsayılan olarak sayfalama cihazının sayfaya tutturulacağını netleştirecek şekilde güncelledik. (Iff7d0)
  • TransformingLazyColumnItemScrollProgress artık performansı artırması gereken bir değer sınıfıdır. (Ic399e)
  • TransformingLazyColumn artık ek ayar gerektirmeden döner düğmeyi destekliyor. (I05206)
  • TransformingLazyColumnState artık scrollToItem'ı destekliyor. (I507b3)
  • @ExperimentalWearFoundationApi, SwipeToReveal API'sinden kaldırıldı (I34a66)

Sürüm 1.5.0-alpha03

2 Ekim 2024

androidx.wear.compose:compose-*:1.5.0-alpha03 iptal edilir. 1.5.0-alpha03 sürümü bu commit'leri içerir.

API Değişiklikleri

  • Mevcut ekranın kapatmak için kaydırma hareketini desteklemediği nadir durumlarda SwipeToReveal'da iki yönlü kaydırma desteği ekledik. . Varsayılan olarak, yalnızca sağdan sola kaydırmalarda kaydırarak gösterme özelliği kullanılır. Kaydırarak kapatma özelliğiyle çakışmayı önlemek için varsayılan davranışa uymanız önemle tavsiye edilir. (Ifac04)
  • LazyColumnState, canScrollForward ve canScrollBackward'yi geçersiz kılacak şekilde güncellendi. Bu güncelleme sayesinde, ilk veya son öğe tam olarak ekranın ortasında olduğunda kaydırma durduruluyor. (Ia77d7)
  • Wear'da odaklanma işleme ve sistemde kaydırarak kapatma ile etkileşim gibi yaygın sorunları ele alan yeni HorizontalPager ve VerticalPager bileşenleri ekledik. (I2902b)
  • LazyColumn desteği ekledik. Böylece, müşterinin key ve contentType değerleri layoutItems üzerinden gösterilebilir. (I1bd9c)

Hata Düzeltmeleri

  • Boyama işaretlerini kullanarak kavisli metin animasyonlarını daha akıcı hale getirdik. (I73a15)
  • Material Dialog dokümanlarını, show işareti false olarak ayarlandıktan sonra onDismissRequest işlevinin çağrılmadığını yansıtacak şekilde güncelledik. (Ifd8d6)
  • Materyal iletişim kutusundaki (I126bf) vinyet animasyonuyla ilgili bir hata düzeltildi.

Sürüm 1.5.0-alpha02

18 Eylül 2024

androidx.wear.compose:compose-*:1.5.0-alpha02 iptal edilir. 1.5.0-alpha02 sürümü bu commit'leri içerir.

API Değişiklikleri

  • Wear Compose LazyColumn için ScreenScaffold desteği ekledik (ve LazyColumnState için ScrollInfoProvider uygulaması ekledik). (Ib8d29)
  • viewportSize adlı kişiyi LazyColumnLayoutInfo Ekip Drive'ına ekledik. (I4187f)

Hata Düzeltmeleri

  • userScrollEnabled işareti false olarak ayarlandığında ScalingLazyColumn'da döner kaydırmanın devre dışı kalmasını sağlayan bir hata düzeltildi. (I490ab, b/360295825)
  • Eğri metinlerdeki beklenmedik dikey dolguyu gidermek için bir hata düzeltmesi yaptık. Eğri metin yüksekliği artık metnin kullandığı gerçek alanla daha çok eşleşiyor. Please note that this is likely to break screenshot tests that involve curved text (Iaa6ef)
  • Bazı durumlarda onDismissRequest işlevinin birden fazla kez çağrılmasına neden olduğundan, Dialog içinde showDialog değeri false olarak ayarlandığında onDismissRequest geri çağırma işlevinin çağrılmasına neden olan hata düzeltmesi geri alındı. (I64656)

Sürüm 1.5.0-alpha01

4 Eylül 2024

androidx.wear.compose:compose-*:1.5.0-alpha01 iptal edilir. 1.5.0-alpha01 sürümü bu commit'leri içerir.

API Değişiklikleri

  • Wear Compose Foundation kitaplığına, ilişkili LazyColumnState ve LazyColumnScope API'leriyle birlikte yeni bir LazyColumn ekledik. Bu, Wear Compose ile özelleştirilebilir ölçeklendirme ve dönüştürme efektleri oluşturmanın temelini oluşturur. (Ib3b22)
  • Yeni LazyColumn API'si kapsamında itemsIndexed öğesinin dizine eklenmiş bir sürümünü LazyColumnScope öğesine ekledik. (Ib4a57)
  • Ölçeklendirme ve dönüştürme davranışlarını desteklemek için LazyColumn değiştiriciler ekledik. (Ie229a)
  • HierarchicalFocusCoordinator sürümü kararlı sürüme yükseltildi. (I31035)
  • Kavisli metinlerde harf aralığı desteği eklendi. (I3c740)
  • Bileşenlerin döndürülmesini durdurmak için CurvedLayout.curvedComposable öğesine rotationLocked parametresi eklendi. (I66898)
  • Wear material ve wear material3'teki geçici LocalUseFallbackRippleImplementation API'si kaldırıldı (I62282)
  • WearDevices.SQUARE, @WearPreviewDevices çoklu önizlemesinden kaldırıldı (I11c02)

Hata Düzeltmeleri

  • SwipeToReveal artık gösterilen öğeleri ekranın görünür kısmına yerleştiriyor. Bu, SwipeToReveal bir liste içinde kullanıldığında öğelerin her zaman etkileşime açık olmasını ve ekranın dışına çıkmamasını sağlayarak yardımcı olur. (I38929)
  • SwipeToReveal artık animatedTo tamamlandığında lastActionType değerini Yok olarak sıfırlıyor. (I59b03)
  • curvedComposable üzerindeki yeni rotationLocked parametresinin dokümanları iyileştirildi. (Ifbd57)
  • NaN, ScalingLazyColumnSnapFlingBehavior'nin performFling'ına aktarılırken yaşanan kilitlenme sorunu düzeltildi. (Ic13da)
  • Kavisli düzen boyutu değiştiricisindeki hata düzeltildi (I0fedf).
  • "sp" ile belirtilen harf aralığı için destek ekledik. (I9f6e3)
  • Material2 iletişim kutusunda, iletişim kutusu görünmez hale geldiğinde onDismissRequest geri çağırma işlevinin çağrılmamasına neden olan bir hata düzeltildi (I64656).
  • LayoutCoordinates.introducesFrameOfReference, amacını daha iyi yansıtması için LayoutCoordinates.introducesMotionFrameOfReference olarak yeniden adlandırıldı. İlgili işlev, koordinatları bu işarete göre hesaplayacak şekilde yeniden adlandırıldı. (I3a330)

Sürüm 1.4

Sürüm 1.4.1

12 Şubat 2025

androidx.wear.compose:compose-*:1.4.1 iptal edilir. 1.4.1 sürümü bu commit'leri içerir.

Hata Düzeltmeleri

  • Bu ayarın sağlanmadığı bazı platformlarda tetiklenen, genel hareket azaltma ayarına erişirken kilitlenmeye karşı koruma sağlandı. (I01e2c)

Sürüm 1.4.0

4 Eylül 2024

androidx.wear.compose:compose-*:1.4.0 iptal edilir. 1.4.0 sürümü bu commit'leri içerir.

1.3.0 sürümünden beri yapılan önemli değişiklikler

  • ScalingLazyColumn ve Picker artık varsayılan olarak döner girişini destekliyor. Açık döner işleme özelliğini kaldırmanız ve varsayılan sistem davranışını kullanmanız önerilir. Gerekirse kaydırma veya tutturma davranışını yapılandırmak için rotaryScrollableBehavior parametresini kullanın. Tutturma davranışı için flingBehavior parametresini kullanarak tutturma davranışı ve dokunarak kaydırma özellikleri sağlamanız önerilir.
  • Modifier.rotaryScrollable, döner etkinlikleri kaydırılabilir kapsayıcılara bağlayan yeni bir değiştiricidir. Bu sayede kullanıcılar, Wear OS cihazlarında taç veya dönen çerçeve kullanarak kaydırabilir.
  • SwipeDismissableNavHost artık uygulama içi geçişler için giriş animasyonu sunuyor.
  • PositionIndicator, bir ekran ilk kez görüntülendiğinde artık varsayılan olarak gösteriliyor.

Ek değişiklikler

Sürüm 1.4.0-rc01

21 Ağustos 2024

androidx.wear.compose:compose-*:1.4.0-rc01 iptal edilir. 1.4.0-rc01 sürümü bu commit'leri içerir.

  • Compose bağımlılıklarını 1.7.0-rc01 sürümüne güncelledik ve Wear Compose Navigation'ı androidx.lifecycle 2.8.3 sürümüne sabitledik.

Sürüm 1.4.0-beta03

12 Haziran 2024

androidx.wear.compose:compose-*:1.4.0-beta03 iptal edilir. 1.4.0-beta03 sürümü bu commit'leri içerir.

Hata Düzeltmeleri

  • Performansı artırmak için Modifier.rotaryScrollable güncellenerek "focusable" yerine "focusTarget" kullanıldı. (Id294b)
  • ProgressIndicator'nın TalkBack altında duyurusunu tekrarlamasına neden olan sorun düzeltildi. (I94563)
  • Wear Compose kitaplığı temel profillerini güncelledik. (I3cbc3)

Sürüm 1.4.0-beta02

29 Mayıs 2024

androidx.wear.compose:compose-*:1.4.0-beta02 iptal edilir. 1.4.0-beta02 sürümü bu commit'leri içerir.

Hata Düzeltmeleri

  • Kırpma sorunlarını (Id865f) gidermek için ekran okuyuculara aktarılan sınır genişliğini eğri metinlerde artırdık.
  • Ekran okuyuculara iletilen HorizontalPageIndicator sınırını kısıtladık. Daha önce gösterge tam ekranı kaplıyordu (Id8d7a).

Sürüm 1.4.0-beta01

14 Mayıs 2024

androidx.wear.compose:compose-*:1.4.0-beta01 iptal edilir. 1.4.0-beta01 sürümü bu commit'leri içerir.

Wear OS için Compose'un 1.4-beta01 sürümü, kitaplığın bu sürümünün özelliklerinin tamamlandığını ve API'nin (deneysel olarak işaretlenen yerler hariç) kilitlendiğini gösterir. Wear Compose 1.4 aşağıdaki yeni işlevleri içerir:

  • Döner etkinlikleri kaydırılabilir kapsayıcılara bağlayan yeni bir değiştirici olan Modifier.rotaryScrollable öğesini ekledik. Bu sayede kullanıcılar, Wear OS cihazlarında taç veya dönen çerçeve aracılığıyla kaydırma yapabilir. Ayrıca, ScalingLazyColumn ve Picker artık varsayılan olarak döner girişini destekliyor. Kaydırma veya tutturma davranışını yapılandırmak için rotaryScrollableBehavior parametresini kullanın. Tutma davranışı için dokunarak kaydırma işleminde de flingBehavior parametresi aracılığıyla tutma sağlamanız önerilir.
  • SwipeDismissableNavHost artık uygulama içi geçişler için giriş animasyonu sunuyor.
  • PositionIndicator, bir ekran ilk kez görüntülendiğinde artık varsayılan olarak gösteriliyor.
  • SelectableChip ve SplitSelectableChip, ToggleChip varyasyonu olarak eklendi. Erişilebilirlik için açılıp kapatılabilir semantik yerine seçilebilir semantik sağlamak üzere bunu RadioButton ile birlikte kullanın.
  • ListHeader artık içeriklerin büyük yazı tipi boyutlarına uyum sağlamak için ekstra yüksekliğe ihtiyaç duyduğu durumlarda yükseklik ayarlamalarını destekliyor.

Hata Düzeltmeleri

  • Seçilebilir çiplerin, zaten seçilmişken seçili durumu değiştirmek için iki kez dokunma şeklinde duyurulmasına neden olan hata düzeltildi. (I7ed88)

Sürüm 1.4.0-alpha08

1 Mayıs 2024

androidx.wear.compose:compose-*:1.4.0-alpha08 iptal edilir. 1.4.0-alpha08 sürümü şu commit'leri içerir.

API Değişiklikleri

  • Yeni döner API'de aşağıdaki değişiklikleri yaptık: Modifier.rotary, Modifier.rotaryScrollable olarak yeniden adlandırıldı; RotaryBehavior arayüzü RotaryScrollableBehavior, işlevi handleScrollEvent ise performScroll olarak yeniden adlandırıldı; RotaryScrollableAdapter, RotaryScrollableLayoutInfoProvider olarak yeniden adlandırıldı ve scrollableState özelliği kaldırıldı. (I0c8a6)
  • Döner API'de ek değişiklikler yaptık: RotaryScrollableLayoutInfoProvider işlevini RotarySnapLayoutInfoProvider olarak yeniden adlandırdık (çünkü bu sağlayıcı yalnızca geçişli döner için gereklidir); RotaryScrollableDefaults.snapBehavior snapOffset içindeki snapOffset parametresinin türünü Int'ten Dp'ye değiştirdik. (Iddebe)
  • SplitSelectableChip üzerindeki clickInteractionSource parametresinin adını containerInteractionSource olarak değiştirdik. (Ia8f84)
  • SplitSelectableChip için tıklama geri çağırma parametre adlarını güncelledik. onClick olan adlar onSelectionClick, onBodyClick olan adlar ise onContainerClick olarak değiştirildi. (I32237)

Hata Düzeltmeleri

  • PositionIndicator (kaydırma çubuğu) kaydırılabilir içerikle çakıştığı için PositionIndicator yatay dolgusunu 2 dp olarak güncelledik (5 dp idi). Bu değişikliğin, dolgu değişikliği nedeniyle PositionIndicator karakterini içeren mevcut ekran görüntülerini bozması beklenmektedir. (I57472)
  • Düşük çözünürlüklü ve yüksek çözünürlüklü döner cihazlar arasındaki farkları açıklayarak yeni döner API'nin dokümanlarını iyileştirdik. (I63abe)
  • SwipeDismissableNavHost içinde, enterpolasyonlu alfa değerleri sıfırdan küçük olduğunda tetiklenebilen bir aralık dışı istisnayı ele aldık. (Ib75a1, b/335782510)

Sürüm 1.4.0-alpha07

17 Nisan 2024

androidx.wear.compose:compose-*:1.4.0-alpha07 iptal edilir. 1.4.0-alpha07 sürümü bu commit'leri içerir.

API Değişiklikleri

  • Döner etkinlikleri kaydırılabilir kapsayıcılara bağlayan yeni bir değiştirici olan Modifier.rotary öğesini ekledik. Bu sayede kullanıcılar, Wear OS cihazlarında taç veya dönen çerçeve aracılığıyla kaydırma yapabilir. Ayrıca, ScalingLazyColumn ve Picker artık varsayılan olarak döner girişini destekliyor. Kaydırma veya tutturma yapılandırmasını belirtmek için rotaryBehavior parametresini içeren yeni aşırı yüklemeler de eklendi. rotaryBehavior parametresi snap olarak ayarlanmışsa dokunarak kaydırma için flingBehavior parametresi aracılığıyla da snap sağlamanız önerilir. (I2ef6f)
  • NestedScroll kaynakları olan sürükle ve bırak, artık animasyonları (Yan Etki) ve fare tekerleği ile klavyeyi (Kullanıcı Girişi) içeren bu kaynakların genişletilmiş tanımını karşılamak için UserInput ve SideEffect ile değiştiriliyor. (I40579)
  • Switch/Checkbox gibi açma/kapatma kontrolleri ile RadioButton gibi seçilebilir kontroller arasındaki farkı daha net hale getirmek için SelectableChip ve SplitSelectableChip simgelerini ekledik. Bu, daha önce eklenen ToggleChip/SplitToggleChip aşırı yüklemelerini selectionControl parametreleriyle değiştirir. (Ia0217)
  • ProgressIndicatorDefaults içindeki IndeterminateStrokeWidth görünürlük değiştiricisi herkese açık olarak güncellendi. (I5b5a4)

Sürüm 1.4.0-alpha06

3 Nisan 2024

androidx.wear.compose:compose-*:1.4.0-alpha06 iptal edilir. 1.4.0-alpha06 sürümü bu commit'leri içerir.

Hata Düzeltmeleri

  • Horologist'ten Rotary davranışını AndroidX'e taşıma konusundaki daha büyük çabanın bir parçası olarak Rotary desteğinin dahili bir taslağını ekledik. (I617d1)
  • Horologist'teki Rotary davranışını AndroidX'e taşıma konusundaki daha büyük çabanın bir parçası olarak dokunsal destekle ilgili dahili bir taslak ekledik. (I5568a)

Sürüm 1.4.0-alpha05

20 Mart 2024

androidx.wear.compose:compose-*:1.4.0-alpha05 iptal edilir. 1.4.0-alpha05 sürümü bu commit'leri içerir.

API Değişiklikleri

  • ScalingLazyListState mülkünün initialCenterItemIndex ve initialCenterItemScrollOffset özelliklerini herkese açık hâle getirdik. (I0c616)
  • ProgressIndicatorDefaults kanalındaki FullScreenStrokeWidth videosunu herkese açık hâle getirdik. (Ibea23)

Hata Düzeltmeleri

  • PositionIndicator uygulamasının performansını artırmak için ScalingLazyColumn üzerinden layoutInfo uygulamasına yapılan çağrı sayısını azalttık. (Idc83d)

Sürüm 1.4.0-alpha04

6 Mart 2024

androidx.wear.compose:compose-*:1.4.0-alpha04 iptal edilir. 1.4.0-alpha04 sürümü bu commit'leri içerir.

API Değişiklikleri

  • ToggleChip ve SplitToggleChip için, toggleControl parametresi yerine selectionControl parametresi alan yeni bir aşırı yükleme ekledik. Erişilebilirlik için açılıp kapatılabilir semantik yerine seçilebilir semantik sağlamak amacıyla RadioButton kontrolüyle birlikte kullanılmalıdır (I1d6d9).
  • ToggleChip ve SplitToggleChip için yeni selectionControl aşırı yüklenmesiyle ilgili parametre adlarını onSelected'dan onSelect'a güncelledik (I1a971).

Sürüm 1.4.0-alpha03

21 Şubat 2024

androidx.wear.compose:compose-*:1.4.0-alpha03 iptal edilir. 1.4.0-alpha03 sürümü şu commit'leri içerir.

API Değişiklikleri

  • Modifier.inspectable sarmalayıcısının desteği sonlandırıldı. Bu API, değiştiricinizde gerekenden daha fazla geçersiz kılma işlemi oluşturacağından artık kullanılması önerilmemektedir. Değiştirici özelliklerini araçlara göstermek isteyen geliştiricilerin inspectableProperties() yöntemini ModifierNodeElement üzerinde uygulaması önerilir. (Ib3236)

Hata Düzeltmeleri

  • WearPreview* ek açıklamalarıyla ilgili bir dokümantasyon hatası düzeltildi. (Id526d)

Sürüm 1.4.0-alpha02

7 Şubat 2024

androidx.wear.compose:compose-*:1.4.0-alpha02 iptal edilir. 1.4.0-alpha02 sürümü şu commit'leri içerir.

Hata Düzeltmeleri

  • Bir öğeyi kaydırmaya başlayarak başka bir öğede işlenmiş bir işlemle etkileşime girmenin (ve işlemi iptal etmenin) mümkün olduğu, kaydırarak gösterme özelliğindeki bir hata düzeltildi.(Ide059)
  • İçeriklerin büyük yazı tipi boyutlarına uyum sağlamak için ek yüksekliğe ihtiyaç duyduğu durumlarda yükseklik ayarlamalarını desteklemek üzere ListHeader özelliğini güncelledik. (I7290c, b/251166127)

Sürüm 1.4.0-alpha01

24 Ocak 2024

androidx.wear.compose:compose-*:1.4.0-alpha01 iptal edilir. 1.4.0-alpha01 sürümü şu commit'leri içerir.

Yeni Özellikler

  • Uygulama içi geçişler için SwipeDismissableNavHost'ya giriş animasyonu eklendi.(cfeb79a)
  • PositionIndicator, bir ekran ilk kez görüntülendiğinde artık varsayılan olarak gösteriliyor. Bu değişiklik, Wear Kalite yönergelerine uyulmasına yardımcı olmak için yapılmıştır. Maalesef bu, PositionIndicator daha önce gösterilmediği için PositionIndicator içeren ekranlarda ekran görüntüsü testlerinin güncellenmesi gerektiği anlamına geliyor. (419cef7)

API Değişiklikleri

  • wear:compose-material ve wear:compose-material3 kitaplıklarına, kullanımdan kaldırılan rememberRipple yerine geçen yeni bir dalgalanma API'si ekledik. Ayrıca, Material bileşenlerini desteği sonlandırılan rememberRipple/RippleTheme API'lerini kullanmaya geri döndürmek için geçici bir CompositionLocal, LocalUseFallbackRippleImplementation ekler. Bu özellik, bir sonraki kararlı sürümde kaldırılacak ve yalnızca özel bir RippleTheme sağladığınız durumlarda geçici bir taşıma yardımı olarak kullanılacaktır. Taşıma bilgileri ve bu değişikliğin arka planında yatan daha fazla bilgi için developer.android.com adresini ziyaret edin. (af92b21)
  • ColorScheme özelliğini değiştirilemez olacak şekilde güncelledik. Bu değişiklik, tek tek renk güncellemelerini daha az verimli hale getirirken renklerin daha yaygın kullanımını daha verimli hale getiriyor. Bu değişikliğin nedeni, uygulamaların çoğunda tek tek renk güncellemenin temel kullanım alanı olmamasıdır. Bu durum hâlâ mümkündür ancak daha öncekinden daha fazla yeniden oluşturma işlemi yapılacaktır. Bu da tüm materyal kodu boyunca durum aboneliklerinin miktarını önemli ölçüde azaltacak ve daha standart kullanım alanlarının başlatma ve çalışma zamanı maliyetini etkileyecektir. (f5c48b7)
  • API'lerinde MutableInteractionSource gösteren Wear Material ve Wear Material 3 bileşenleri, artık varsayılan olarak null değerini alan, null değer atanabilir bir MutableInteractionSource 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 zaman MutableInteractionSource 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ğiniz MutableInteractionSource değerini kullanmıyorsanız bunun yerine null iletmeniz önerilir. Kendi bileşenlerinizde de benzer değişiklikler yapmanız önerilir. (f8fa920)
  • Genişletilebilir durumu kaydetmek için rememberExpandableState güncellendi. Bu, başka bir ekrana gidildiğinde verilerin depolanmasını ve orijinal ekrana geri dönüldüğünde geri yüklenmesini sağlar. (5c80095)

Hata Düzeltmeleri

  • ReduceMotion ayarını, yaşam döngüsüne duyarlı bir dinleyici kullanacak şekilde güncelledik. (7c6b122)
  • TouchExplorationStateProvider dinleyicisi, yaşam döngüsüne duyarlı olacak şekilde güncellendi (be28b01)
  • Performansı artırmak için CompactButton'da materialcore katmanı kaldırıldı (25db8e9)
  • İstisnaları önlemek için BasicSwipeToDismissBox'yı NaN kaymalarına karşı daha sağlam hale getirdik (b983739).
  • Alfa değerlerinin 0,1 aralığında olmasını sağlamak için BasicSwipeToDismissBox güncellendi.
  • ToggleButton, SplitToggleButton, Checkbox, Switch ve RadioButton öğelerinde erişilebilirlik duyurularının tekrarlanmaması için bir hata düzeltildi (daha önce semantik roller kopyalanıyordu) (d11eeb7)

Sürüm 1.3

Sürüm 1.3.1

3 Nisan 2024

androidx.wear.compose:compose-*:1.3.1 iptal edilir. 1.3.1 sürümü bu commit'leri içerir.

Hata Düzeltmeleri

  • Bir öğeyi kaydırmaya başlayarak başka bir öğede işlenmiş bir işlemle etkileşime girmenin (ve işlemi iptal etmenin) mümkün olduğu, kaydırarak gösterme özelliğindeki bir hata düzeltildi. (Ide059)

Sürüm 1.3.0

24 Ocak 2024

androidx.wear.compose:compose-*:1.3.0 iptal edilir. 1.3.0 sürümü şu commit'leri içerir.

1.2.0 sürümünden beri yapılan önemli değişiklikler

  • SwipeToDismissBoxState sınıfı, SwipeToDismissValue numaralandırması ve Modifier.edgeSwipeToDismiss uzantı işlevi artık androidx.wear.compose.material paketi yerine androidx.wear.compose.foundation paketinin bir parçasıdır. Bu güncellenmiş mimari, hareket işlemeyi diğer tasarım unsurlarından bağımsız olarak uygulamanıza olanak tanır. Yapılandırılmış bir temadaki renkleri uygulama gibi Material Design iş akışları ayrı olarak ele alınır.
  • SwipeToRevealCard ve SwipeToRevealChip sınıfları, recommended swipe-to-reveal guidance'ı uygulamanıza yardımcı olur. SwipeToRevealSample sınıfı, bu bileşenlerin nasıl kullanılacağını gösterir.
  • 1.3.0-alpha02 sürümümüzde, kullanıcı tarafından seçilen yazı tipi ölçeklendirmesini daha iyi desteklemek için Chip ve ToggleChip nesnelerinin yüksekliğinin artmasına neden olan bir değişiklik yapıldı. Bu durum, bazı kırpmalara neden olabilir. Bu sorunu düzeltmek için large şekli artık daha büyük bir köşe yarıçapı (24 dp yerine 26 dp) kullanıyor.MaterialTheme Chip ve ToggleChip nesneleri, Chip ve ToggleChip'in köşelerindeki içeriğin kırpılmasını önlemek için bu yeni köşe yarıçapını kullanır.

    • Çoğu Chips ve ToggleChips, varsayılan 52 dp yüksekliği nedeniyle değişmez. Ancak, birincil veya ikincil etiket metninin birden fazla satırını içeren ya da yüksekliği geçersiz kılınmış Chip ve ToggleChip nesneleri, ekran görüntüsü testlerinin bozulmasına neden olabilir.

Ek değişiklikler

1.3.0 sürümünde yapılan değişikliklerin daha kapsamlı bir listesi için beta01 sürüm notlarına bakın.

Uygulamayla ilgili öneriler

  • Uygulamanız, kullanıcıların ekran içeriğinde kaydırma yapmasına olanak tanıyorsa (ör. harita tabanlı bir uygulamada) SwipeDismissableNavHost composable'da userSwipeEnabled değerini false olarak ayarlayarak kaydırma işlemeyi devre dışı bırakın ve kullanıcıların önceki ekrana gitmesine olanak tanıyan bir düğme ekleyin.
  • Kaydırma listesindeki fade-in ve konum değişikliği animasyonları sırasında konum göstergesi için animasyonları devre dışı bırakmak üzere SnapSpec nesnesini kullanın.
  • Bir medya uygulamasının oynatma için içerik yüklemesini beklerken boş bir Placeholder composable gösterin.
  • İsteğe bağlı olarak genişletilebilen öğelerden oluşan bir koleksiyon oluşturmak için deneysel ExpandableStateMapping sınıfını kullanabilirsiniz.

Sürüm 1.3.0-rc01

10 Ocak 2024

androidx.wear.compose:compose-*:1.3.0-rc01 iptal edilir. 1.3.0-rc01 sürümü şu commit'leri içerir.

Hata Düzeltmeleri

  • 26 dp yuvarlak köşe yarıçapı kullanmak için MaterialTheme büyük şeklini güncelledik. Bu şekil artık Chip ve ToggleChip tarafından kullanılacak. Bu değişiklik, içeriklerin büyük yazı tipi boyutlarına uyum sağlamak için daha fazla yüksekliğe ihtiyaç duyduğu durumlarda yükseklik ayarlamalarını desteklemek için gereklidir. Aksi takdirde, mevcut stadyum şekli bazı metin içeriklerini kırpar.

    Köşelerde kırpılan metin
    Şekil 1: Köşelerde kırpılan metin.
    Metin kırpılmamış
    Şekil 2: Metin kırpılmamış.

    Bu değişiklik, ekran görüntüsü testlerinde bozulmaya neden olabilir. (I2e6ae)

Sürüm 1.3.0-beta02

13 Aralık 2023

androidx.wear.compose:compose-*:1.3.0-beta02 iptal edilir. 1.3.0-beta02 sürümü şu commit'leri içerir.

Hata Düzeltmeleri

  • BasicSwipeToDismissBox uygulamasında amaçlanan kaydırma hareketini geri yükledik. Bu durum, önceki bir sürümde değiştirilmişti. Bu nedenle, geçişin kaydırma kısmı parmak ekrana dokunurken gerçekleşiyordu. (Id8e76)

Sürüm 1.3.0-beta01

15 Kasım 2023

androidx.wear.compose:compose-*:1.3.0-beta01 iptal edilir. 1.3.0-beta01 sürümü şu commit'leri içerir.

Wear OS için Compose 1.3-beta01 sürümü, kitaplığın bu sürümünün özelliklerinin tamamlandığını ve API'nin (deneysel olarak işaretlenenler hariç) kilitlendiğini gösterir. Wear Compose 1.3 aşağıdaki yeni işlevleri içerir:

  • SwipeToDismissBoxState, SwipeToDismissValue ve Modifier.edgeSwipeToDismiss, BasicSwipeToDismissBox'daki temel kaydırarak kapatma uygulamasıyla birlikte androidx.wear.compose.material'den androidx.wear.compose.foundation'e taşındı. Bu, kapatmak için kaydırma hareketinin Material Design'dan bağımsız olarak kullanılmasını sağlar. Örneğin, androidx.wear.compose.navigation içindeki SwipeDismissableNavHost öğesinde bu hareket kullanılabilir. androidx.wear.compose.material'den gelen SwipeToDismissBox, renkleri MaterialTheme'den çektiği ve kalan uygulamayı BasicSwipeToDismissBox'ye devrettiği için Material Design ile birlikte kullanılması önerilir.
  • SwipeDismissableNavHost artık kaydırma işlemenin gerekli olmadığı ekranlarda devre dışı bırakılabilmesi için yeni bir userSwipeEnabled parametresini destekliyor.
  • BasicSwipeToDismissBox, HierarchicalFocusCoordinator kullanarak odaklanma işleme özelliğini iyileştirdi.
  • SwipeToReveal, Card ve Chip için önerilen kullanıcı deneyimi kılavuzunu izleyen Material'da yeni SwipeToRevealCard ve SwipeToRevealChip composable'lar içerir. İkincil işlem için geri alma desteği de sunar.
  • DefaultTextStyle artık Android platformunda tutarlılık sağlamak için yazı tipi dolgusunu devre dışı bırakıyor.
  • Chip ve ToggleChip artık erişilebilirlik için büyük yazı tipleri kullanıldığından büyüyen içeriğe uyum sağlamak üzere yüksekliklerini ayarlıyor.
  • PositionIndicator artık görünme, kaybolma ve konum değiştirme animasyonları için ayrı ayrı animasyon özelliklerine sahip. Performans nedeniyle, kaydırılabilir listelerle birlikte kullanıldığında fade-in ve konum değişikliğinin devre dışı bırakılmasını öneririz.
  • ExpandableStateMapping, ExpandableStates oluşturulması gerektiğinde (mutlaka @Composable kapsamıyla değil) yeni bir yöntem sunar.
  • Placeholder, içerik artık hazır durumda değilse sıfırlamaya izin veriyor. Ayrıca, hareketi azaltma ayarı artık Placeholder'daki parıltı efekti ve silme hareketinde de geçerli.

Bilinen Sorunlar

  • PositionIndicator, bir ekran ilk kez görüntülendiğinde başlangıçta gösterilmez. Başlangıçta gösterilecek ancak animasyon içermeyecek şekilde 1.4'ün alfa sürümünde değişiklik yapmayı planlıyoruz.

API Değişiklikleri

  • Foundation seviyesinin SwipeToDismissBox adını BasicSwipeToDismissBox olarak değiştirdik. Bu, temel düzey bileşen ile Materyal düzeyi arasındaki farkı netleştirir SwipeToDismissBox. İkincisi, antrenmanlarda kullanılmak üzere MaterialTheme'dan renkler alır ve kalan uygulamayı BasicSwipeToDismissBox'ye devreder. (Ibecfc)
  • rememberExpandableStateMapping işlevini deneysel olarak işaretledik ve expandableItem işlevinin performansını iyileştirdik. (I5f6bc)
  • Material SwipeToReveal Card ve Chip API'lerindeki SwipeToRevealAction sınıfını, SwipeToRevealPrimaryAction, SwipeToRevealSecondaryAction ve SwipeToRevealUndoAction composable'larını kullanan yuvaya dayalı bir API ile değiştirdik. Yeni API'nin nasıl kullanılacağına dair örnekler için lütfen örnek koda bakın. (Ia8943)
  • PositionIndicator animasyon işaretlerini AnimationSpec parametreleriyle değiştirdik. Ayrı animasyonlar, snap değerini AnimationSpec olarak ileterek devre dışı bırakılabilir. (I6c523)

Hata Düzeltmeleri

  • Boyut sınırlandırıldığında sınırlı kavisli metnin tetiklediği hata düzeltildi (I50efe).
  • curvedComposable (I970eb) ile ilgili olası bir NaN kilitlenmesi giderildi.
  • PositionIndicator üzerindeki konum değişikliği vurgu animasyonunun kaldırılması geri alındı. (Ieb424)
  • Performansını artırmak için malzeme çipinin malzeme çekirdek katmanını kaldırdık. (If2dcb)

Sürüm 1.3.0-alpha08

18 Ekim 2023

androidx.wear.compose:compose-*:1.3.0-alpha08 iptal edilir. 1.3.0-alpha08 sürümü şu commit'leri içerir.

API Değişiklikleri

  • Farklı animasyonları (showFadeInAnimation, showFadeOutAnimation ve showPositionAnimation) kontrol etmek için PositionIndicator aşırı yüklemelerine ayrı ayrı işaretler ekledik. Önceki API kullanımdan kaldırıldı ve çağrıları yeni API'ye yönlendiriyor. Performans ve kullanıcı deneyimi tutarlılığı açısından, PositionIndicator kaydırılabilir bir liste ile kullanıldığında showFadeInAnimation ve showPositionAnimation işaretlerini kapatmanızı öneririz. PositionIndicator, ses değişikliği gibi durumlarda bağımsız bir gösterge olarak kullanılıyorsa 3 animasyonun da etkinleştirilmesini öneririz. (I44294)
  • Kaydırarak Kapatma işlevinin wear.compose.foundation'e taşınmasının ardından Material SwipeToDismissBoxState, SwipeToDismissValue ve edgeSwipeToDismiss kullanımdan kaldırıldı. Lütfen wear.compose.foundation eşdeğerleriyle değiştirin. (Iee8c9)

Hata Düzeltmeleri

  • Wear Compose Foundation, Material ve Navigation kitaplıklarının temel profillerini güncelledik. (Idb060)
  • Önceki bir CL'de PositionIndicator için yapılan davranış değişikliği geri alındı. Böylece, bir ekran ilk kez görüntülendiğinde PositionIndicator animasyonlu hale getirildi. 1.4'ün alfa sürümünün başlarında benzer bir değişiklik yapmayı planlıyoruz. Böylece, PositionIndicator başlangıçta animasyon olmadan gösterilecek. (I41843)
  • PositionIndicator'daki bazı performans sorunlarını giderdik. (I1c654, b/302399827)
  • Dokunarak keşfetme durum sağlayıcısının varsayılan uygulamasının performansını, türetilmiş durum yerine State<Boolean> kullanacak şekilde optimize ettik. (Ieec4d)
  • Android 13 ve sonraki sürümler için systemGestureExclusion dikdörtgen belirledik. (Ib1f4b)

Sürüm 1.3.0-alpha07

4 Ekim 2023

androidx.wear.compose:compose-*:1.3.0-alpha07 iptal edilir. 1.3.0-alpha07 sürümü şu commit'leri içerir.

API Değişiklikleri

  • Farklı animasyonları (showFadeInAnimation, showFadeOutAnimation ve showPositionAnimation) kontrol etmek için PositionIndicator öğesine ayrı ayrı işaretler ekledik. Önceki API kullanımdan kaldırıldı ve çağrıları yeni API'ye yönlendiriyor. Performans ve kullanıcı deneyimi tutarlılığı açısından, PositionIndicator kaydırılabilir bir liste ile kullanıldığında showFadeInAnimation ve showPositionAnimation işaretlerini kapatmanızı öneririz. PositionIndicator, ses değişikliği gibi durumlarda bağımsız bir gösterge olarak kullanılıyorsa 3 animasyonun da etkinleştirilmesini öneririz. (Ia2d63)

Hata Düzeltmeleri

  • Birincil işlem metnine solma animasyonu ekleyerek ve tam kaydırma genişletmesinde ikincil işlemi soldurarak/simge ölçeğini değiştirerek kaydırarak gösterme hareketinde iyileştirmeler yaptık. (Ib7223)
  • Kaydırarak Göster işlemlerinin erişilebilir hale getirilmesi önerilir. Bu nedenle, Kaydırarak Göster örneklerimize özel erişilebilirlik işlemleri ekledik. (I42224)
  • İlk mantığın yeniden oluşturmayı tetiklememesi için yeniden düzenleme de dahil olmak üzere SwipeToDismissBox performansını iyileştirdik. SwipeToDismissBox artık tam ekran boyutunda çiziliyor. (Ie0aa2)
  • PositionIndicator simgesinin yanlışlıkla kaybolmasına neden olan hata düzeltildi. (I2091a)
  • Yeniden oluşturma işlemlerini optimize ederek PositionIndicator performansını iyileştirme. Animasyonları kontrol etmek için yeni işaretler (fadeIn, fadeOut ve positionChange) eklenmiştir (API değişikliklerine bakın) (Ifac7d).
  • PositionIndicator (Idf875) için mikro karşılaştırma testleri ekledik.

Sürüm 1.3.0-alpha06

20 Eylül 2023

androidx.wear.compose:compose-*:1.3.0-alpha06 iptal edilir. 1.3.0-alpha06 sürümü şu commit'leri içerir.

Hata Düzeltmeleri

  • SwipeToReveal ile Modifier.edgeSwipeToDismiss için destek ekledik. (I95774, b/293444286)
  • Material SwipeToRevealChip ve SwipeToRevealCard için örnekler ekledik. (Ieb974)
  • Wear Compose Foundation ve Material kitaplıklarının temel profillerini güncelledik. (I1dd1f)

Sürüm 1.3.0-alpha05

6 Eylül 2023

androidx.wear.compose:compose-*:1.3.0-alpha05 iptal edilir. 1.3.0-alpha05 sürümü şu commit'leri içerir.

Hata Düzeltmeleri

  • Kaydırarak Göster özelliğine, tek seferde yalnızca bir öğenin kaydırılabilmesi için tutma işlevi eklendi. (I3cd7a)
  • ScalingLazyColumnDefaults dokümanları, gerçek davranışıyla daha iyi eşleşecek şekilde iyileştirildi. (I886d3)

Sürüm 1.3.0-alpha04

23 Ağustos 2023

androidx.wear.compose:compose-*:1.3.0-alpha04 iptal edilir. 1.3.0-alpha04 sürümü şu commit'leri içerir.

Yeni Özellikler

  • SwipeToReveal'nın ikincil işlemi için geri alma desteği ekledik. (I7a22d)

API Değişiklikleri

  • Wear Material3 kitaplığına HorizontalPageIndicator ekleyin. (Ifee99)
  • androidx.wear.tooling.preview kitaplığını kullanmak için Wear Compose önizleme araçları güncellendi. (Ib036e)

Hata Düzeltmeleri

  • Yuvarlak düğmelerde değiştiricilerin doğru şekilde zincirlenmemesine yol açan hata düzeltildi. (I5e162)

Sürüm 1.3.0-alpha03

9 Ağustos 2023

androidx.wear.compose:compose-*:1.3.0-alpha03 iptal edilir. 1.3.0-alpha03 sürümü şu commit'leri içerir.

API Değişiklikleri

  • Kartlar ve çiplerle SwipeToReveal uygulamak için Material'a iki yeni composable ekledik. Bu composable'lar, bileşenle ilgili önerilen kullanıcı deneyimi yönergelerine uyar ve geliştiricilerin Wear Material'daki mevcut bileşenlerle SwipeToReveal uygulamalarını kolaylaştırır. (I7ec65)
  • Daha önce yorumlarda belirtilen API kısıtlamaları olarak FloatRange ek açıklamalarını etkinleştirdik. (Icb401)

Hata Düzeltmeleri

  • ScalingLazyColumn öğesinin ilk kaydırma mantığını onGloballyPositioned() içine taşıdık. (Ic90f1)
  • Artık vuruş dağıtımlarını optimize etmek için PositionIndicator, ProgressIndicator ve SelectionControls'de drawWithCache kullanıyoruz. (I5f225, b/288234617)
  • Devre dışı durumlarda onay kutusu işaretinin görünürlüğü düzeltildi. (Ib25bf)
  • İçerik hazır durumda değilse yer tutucunun gösterilmesi için Placeholder güncellendi. (Ibd820)
  • Kararsız Placeholder testlerinde (Idb560) bazı düzeltmeler yaptık.

Sürüm 1.3.0-alpha02

26 Temmuz 2023

androidx.wear.compose:compose-*:1.3.0-alpha02 iptal edilir. 1.3.0-alpha02 sürümü şu commit'leri içerir.

API Değişiklikleri

  • ExpandableStateMapping kapsamı içinde oluşturulması gerekmeyen, isteğe bağlı olarak oluşturulması gereken durumlar için @Composable oluşturmanın yeni bir yolu olan ExpandableStates'ı kullanıma sunduk (Iff9e0).
  • SwipeToDismissBox, androidx.wear.compose.material paketinden androidx.wear.compose.foundation paketine taşındı. (I275fb)
  • Uyumluluk bastırmayı açıklamak için API dosyaları güncellendi. (I8e87a, b/287516207)
  • Chip, CompactChip ve ToggleChip için yükseklik sabitlerini herkese açık hale getirdik (Idbfde).
  • Chip ve CompactChip için yatay ve dikey dolguları herkese açık hâle getirdik. (Ieeaf7)
  • Yeni userSwipeEnabled parametresiyle SwipeDismissableNavHost içinde kaydırma işlemenin devre dışı bırakılmasına yönelik işlev eklendi. (Id2a0b, b/230865655)
  • Wear Compose Navigation kitaplığını, Wear Compose Foundation'daki yeni SwipeToDismissBox kullanacak şekilde güncelledik. (I4ff8e)

Hata Düzeltmeleri

  • expandedItem, düğmeleri olan bir düğmenin davranışını tıkladıktan sonra doğru içeriği göstermemesine neden olan z-sırası hatası düzeltildi. (I1899d, b/289991514)
  • HierarchicalFocusCoordinator kullanarak SwipeToDismissBox (ve dolayısıyla SwipeDismissableNavHost) odak işleme özelliğini iyileştirin (I45362, b/277852486)
  • SwipeableV2 uygulamasında hareket işleme ile ilgili bir düzeltme yaptık . (I89737)
  • 1.2 sürümümüz için temel profilleri tamamladık. (Id5740)
  • SwipeToDismissBox, Foundation'a taşındıktan sonra Material SwipeToDismissBox uygulaması artık Foundation'a yönlendiriyor ve temasından varsayılan renk değerleri sağlıyor.(If8451)
  • ListHeader için başlık semantiği ekledik. (Ic5420)
  • Chip ve ToggleChip, gerektiğinde erişilebilirlik için büyük yazı tipleri nedeniyle büyüyen içeriğe uyum sağlamak üzere artık yüksekliklerini ayarlayacak. (Iaf302)
  • Erişilebilirlik için SplitToggleChip öğesinin dokunulabilir alanının semantik rolündeki bir hata düzeltildi. (Ieed3a)
  • Hareketi azaltma ayarı artık yer tutuculardaki ışıltı efektini ve silme hareketini devre dışı bırakıyor. (I91046)
  • Stepper ve InlineSlider artık uzun basıldığında tekrarlanan tıklamaları destekliyor. Böylece + veya - düğmelerini basılı tutarak Stepper ve InlineSlider değerini hızlıca artırabilir/azaltabilirsiniz. (I27359)

Sürüm 1.3.0-alpha01

21 Haziran 2023

androidx.wear.compose:compose-*:1.3.0-alpha01 iptal edilir. 1.3.0-alpha01 sürümü şu commit'leri içerir.

Hata Düzeltmeleri

  • 1.2.0-alpha07 ve 1.2.0-alpha10'de duyurulduğu gibi, Android Platformu'nda tutarlılık sağlamak için DefaultTextStyle yazı tipi dolgusunu devre dışı bırakacak şekilde değiştiriyoruz. Bu değişiklik, büyük yazı tipi boyutlarında metin kırpılmasıyla ilgili bazı sorunları çözecek ve ekran düzenlerini de etkileyebilecektir. Bu nedenle, ekran görüntüsü testlerinin güncellenmesi gerekir. Örneğin, burada metin kırpma (Ic6a86) görüyoruz.
Büyük yazı tipi boyutunda metin kırpılıyor
1. Şekil: Metin kırpılmış.
  • Yazı tipi dolgusu devre dışı bırakıldığında artık görünmez:
Büyük yazı tipi boyutunda metin kırpılmıyor
Şekil 2: Metin kırpılmamış.
  • wear.compose.foundation, wear.compose.material'nin API bağımlılığı olacak şekilde güncellendi (I72004, b/285404743)
  • SwipeToDismissBox ile ilgili bir hata düzeltildi. İçerik veya arka plan değiştiğinde yeni değiştiriciler oluşturulması için arka plan ve içerik anahtarları artık hatırlatma bloğuna iletiliyor. (Ib876c, b/280392104)
  • 12 veya 24 saatlik zaman biçimi seçilirken yerel ayarın kullanılması için TimeText güncellendi. (If4a3d)
  • SwipeToDismissBox contentScrimColor varsayılan parametrelerindeki tutarsızlık düzeltildi. (I2d70f)
  • SwipeToReveal uygulamasında hareket işleme özelliği iyileştirildi. (I28fb7)

Bilinen Sorunlar

  • Kullanıcı tarafından yapılandırılan yazı tipi boyutlarının desteklenmesi, erişilebilirlik için gereklidir. Çok satırlı çipleri büyük yazı tipi boyutlarıyla görüntülediğinizde metinlerin kırpılabileceğini biliyoruz. Bu nedenle, bu durumlarda yükseklik ayarlamaları yapabilmek için çipi erken 1.3 alfa sürümünde güncelleyeceğiz.

Sürüm 1.2

Sürüm 1.2.1

18 Ekim 2023

androidx.wear.compose:compose-*:1.2.1 iptal edilir. 1.2.1 sürümü şu commit'leri içerir.

Hata Düzeltmeleri

  • PositionIndicator simgesinin yanlışlıkla kaybolmasına neden olan hata düzeltildi. (7a167f)

Sürüm 1.2.0

9 Ağustos 2023

androidx.wear.compose:compose-*:1.2.0 iptal edilir. 1.2.0 sürümü şu commit'leri içerir.

1.1.0 sürümünden beri yapılan önemli değişiklikler

Sürüm 1.2.0-rc01

26 Temmuz 2023

androidx.wear.compose:compose-*:1.2.0-rc01 iptal edilir. 1.2.0-rc01 sürümü şu commit'leri içerir.

Hata Düzeltmeleri

  • 1.2 sürümümüz (Id5740) için temel profilleri tamamladık.

Sürüm 1.2.0-beta02

7 Haziran 2023

androidx.wear.compose:compose-*:1.2.0-beta02 iptal edilir. 1.2.0-beta02 sürümü şu commit'leri içerir.

Yeni Özellikler

  • LocalReduceMotion CompositionLocal adlı yeni deneysel değişkeni ekledik. Bu değişken, ScalingLazyColumn üzerinde ölçeklendirme ve solma işlemlerini devre dışı bırakır. (I58024)

Hata Düzeltmeleri

  • Wear Compose temeli ve materyal kitaplıkları için temel profilleri güncelledik(I4725d).
  • SwipeToDismissBox contentScrimColor parametrelerinin varsayılan değerlerindeki tutarsızlık giderildi (I2d70f).
  • IncludeFontPadding ayarı için kullanılan DefaultTextStyle varsayılan değeri düzelttik (I737ed).

Sürüm 1.2.0-beta01

24 Mayıs 2023

androidx.wear.compose:compose-*:1.2.0-beta01 iptal edilir. 1.2.0-beta01 sürümü şu commit'leri içerir.

Wear OS 1.2 için Compose'da neler var?

Wear OS için Compose 1.2-beta01 sürümü, kitaplığın bu sürümünün özelliklerinin tamamlandığını ve API'nin (deneysel olarak işaretlenen yerler hariç) kilitlendiğini gösterir. Wear Compose 1.2'de aşağıdaki yeni işlevler yer alıyor:

  • expandableItem ve expandableItems, ScalingLazyColumn içindeki öğelerin genişletilmesini destekleyen iki yeni Foundation bileşenidir. Satır sayısı gibi tek bir genişletilebilir öğe için expandableItem kullanın. Genişletilebilir öğeler grubu için expandableItems, içerik genişletildikten sonra daraltılan bir düğme oluşturmayı kolaylaştırmak için expandableButton kullanın.
  • HierarchicalFocusCoordinator: Bu deneysel composable, kompozisyonun alt ağaçlarının odaklanmanın etkinleştirildiği veya devre dışı bırakıldığı şekilde işaretlenmesini sağlar.
  • Picker: API artık seçicinin kullanıcı kaydırma işlemi için etkin olup olmadığını kontrol etmek üzere userScrollEnabled özelliğini içeriyor.
  • PickerGroup: Birden fazla seçiciyi birlikte işlemek için yeni bir birleştirilebilir. HierarchicalFocusCoordinator API'yi kullanarak seçiciler arasındaki odağı yönetir ve seçici öğelerinin otomatik olarak ortalanmasını sağlar.
  • Placeholder - Işıltı ve "Silme" animasyonlarında güncellemeler yaptık. Silme efekti, içerik hazır olduğunda artık hemen uygulanıyor.
  • ScalingLazyColumn: ScalingLazyColumn ve ilişkili sınıfları androidx.wear.compose.material.ScalingLazyColumn'ten androidx.wear.compose.foundation.lazy.ScalingLazyColumn'ye taşıdık. Foundation.Lazy sürümünü kullanmak için lütfen güncelleyin.
  • SwipeToReveal - Mevcut "uzun basma" desenini tamamlayarak ikincil işlemlere erişmek için deneysel kaydırarak gösterme desteği ekledik.
  • Stepper - Artık varsayılan aralık semantiğinin devre dışı bırakılmasını kolaylaştırmak için ek bir enableRangeSemantics parametresiyle aşırı yüklenmeye sahip.
  • Previews - Wear ekranlarında composable'ları önizlemek için aşağıdaki özel ek açıklamaları ekledik: WearPreviewSmallRound, composable'ı küçük ve yuvarlak bir cihazda önizler; WearPreviewLargeRound, composable'ı büyük ve yuvarlak bir cihazda önizler; WearPreviewSquare, composable'ı kare bir cihazda önizler. Ayrıca, aşağıdaki ve çoklu önizleme ek açıklamaları: WearPreviewFontScales, composable'ları birden fazla yazı tipi boyutuna sahip bir Wear cihazda önizlerken WearPreviewDevices, composable'ları farklı Wear cihazlarda önizler.
  • Wear Compose'a DefaultTextStyle ekledik. Bu özellik, PlatformTextStyle.includeFontPadding özelliğini varsayılan olarak true değerine ayarlar (mevcut ayar). Bu sayede, yazı tipi dolgusunu varsayılan olarak devre dışı bırakma işlemini erken 1.3 alfa sürümündeki Compose kitaplıklarıyla senkronize edebiliriz. Daha fazla bilgi için 1.2.0-alpha10 sürümüne göz atın.

Yeni Özellikler

  • reduce_motion ayarı etkinleştirildiğinde devre dışı bırakılan ölçeklendirme ve solma animasyonu için deneysel destek ekledik. (I58024)

Hata Düzeltmeleri

  • CurvedSize.kt'teki angularWidthDp için iyileştirilmiş dokümanlar (Iab75c)
  • SwipeDismissableNavHost artık boş geri yığınla ilgili olası nedenleri içeren bir uyarı günlüğe kaydediyor. Bu, geri yığın boşken oluşturulan IllegalArgumentException nedeniyle oluşan beklenmedik kilitlenmeleri önlemek için yapılır. (I04a81, b/277700155)

Sürüm 1.2.0-alpha10

10 Mayıs 2023

androidx.wear.compose:compose-*:1.2.0-alpha10 iptal edilir. 1.2.0-alpha10 sürümü şu commit'leri içerir.

Yeni Özellikler

  • İkincil işlemlere erişmek için kaydırarak gösterme özelliği eklendi. Bu kalıp, kullanıcının (farklı) ikincil işlemleri gösterebileceği mevcut yöntem olan "uzun basma" kalıbını tamamlar. (I60862)

API Değişiklikleri

  • RevealScope, SwipeToReveal'deki işlem composable'larına eklendi. Bu sayede, ek işlemlerin gösterildiği ofsete erişebilirsiniz. (I3fd56)

Hata Düzeltmeleri

  • ScalingLazyColumn'nın, fırlatma işleminden sonra Wear API 33'te takılı kalması sorunu düzeltildi (Ic4599).
  • Jank azaltma için PositionIndicator'da bazı performans iyileştirmeleri yaptık. (I35e92)
  • Chip ve CompactChip'da, anlamsal rolün artık Role.Button olarak ayarlanmamasına neden olan hata düzeltildi. (I93f91, b/277326264)

Bilinen Sorunlar

  • Android Studio'da, @WearPreviewDevices ve @WearPreviewFontScales ile açıklama eklenmiş önizlemenin oluşturulmasında hataya neden olan bir hata tespit ettik. Bu hatanın düzeltilmesi için kısa süre içinde bir yayın planlanmaktadır. Diğer Wear önizleme ek açıklamalarının Android Studio Giraffe 2022.3.1 ve sonraki sürümlerde beklendiği gibi çalıştığını lütfen unutmayın.

  • 1.2.0-alpha07 sürümünde, mevcut PlatformTextStyle.includeFontPadding değerini true olarak koruyarak Wear Compose'a DefaultTextStyle'ı ekledik. Arka plan için Compose'da yazı tipi dolgusunu düzeltme başlıklı makaleyi inceleyin. Android platformunda tutarlılık sağlamak için DefaultTextStyle'ı değiştirerek 1.3'ün alfa sürümünün başlarında yazı tipi dolgusunu kapatacağız. Bu değişiklik, büyük yazı tipi boyutlarında metin kırpılmasıyla ilgili bazı sorunları düzeltir ve ekran düzenlerini de etkileyebilir. Bu nedenle, ekran görüntüsü testlerinin güncellenmesi gerekir. Örneğin, büyük yazı tipi boyutlarında metin kırpma sorunuyla karşılaşırız:

Büyük yazı tipi boyutunda metin kırpılıyor
1. Şekil: Metin kırpılmış.
  • Yazı tipi dolgusu devre dışı bırakıldığında artık görünmez:
Büyük yazı tipi boyutunda metin kırpılmıyor
Şekil 2: Metin kırpılmamış.

Yeni ayar, temanızdaki tipografiyi geçersiz kılarak hemen kullanılabilir. Örnek koda göz atın.

Sürüm 1.2.0-alpha09

19 Nisan 2023

androidx.wear.compose:compose-*:1.2.0-alpha09 iptal edilir. 1.2.0-alpha09 sürümü şu commit'leri içerir.

API Değişiklikleri

  • DP'de açısal genişliği ayarlamak için CurvedModifier API'sine angularSizeDp ekleyin (I89a52)

Hata Düzeltmeleri

  • Zaman seçici demolarımızdaki erişilebilirlik sorunlarını düzelttik(Id0eb7)

Sürüm 1.2.0-alpha08

5 Nisan 2023

androidx.wear.compose:compose-*:1.2.0-alpha08 iptal edilir. 1.2.0-alpha08 sürümü şu commit'leri içerir.

API Değişiklikleri

  • ExpandableItemsState olan özelliğin adını ExpandableState olarak değiştirdik. (If85ea)
  • İçerik genişletildiğinde daralan bir düğme oluşturmayı kolaylaştırmak için expandableButton öğesini ekledik ve genişletilebilir öğe örneklerini güncelledik. (Iae309)

Hata Düzeltmeleri

  • Daha fazla olasılık göstermek için geliştirilmiş genişletilebilir örnekler. expandableItem animasyonu, içeriğinin animasyon boyunca ortada kalacak şekilde değiştirildi. (I2f637)
  • State kullanılarak renkler manuel olarak animasyonlandırıldığında fazladan yeniden oluşturmaları önlemek için ToggleControls güncellendi. (I5d319)

Sürüm 1.2.0-alpha07

22 Mart 2023

androidx.wear.compose:compose-*:1.2.0-alpha07 iptal edilir. 1.2.0-alpha07 sürümü şu commit'leri içerir.

API Değişiklikleri

  • 1.2.0-alpha06 sürümünde eklenen Genişletilebilir Öğe bileşenleri, MaterialTheme ile anlamlı bir referansa sahip olmadıkları için Material'dan Foundation'a taşındı. (Ib0525)

Hata Düzeltmeleri

  • PickerGroup kullanan bir ekranda meydana gelen kilitlenme sorunu, hiçbir seçicinin odaklanmadığı durumlarda PickerGroup'nın odağı doğru şekilde işlemesini sağlayarak düzeltildi. Ayrıca seçici demolarımızda RSB kaydırma desteği de eklendi. (If8c19)
  • İletişim kutusu geçişlerini iyileştirdik. Giriş geçişi artık çıkış geçişiyle eşleşecek şekilde daha sorunsuz. (Ib5af9)
  • Wear Compose'a DefaultTextStyle ekledik. Bu özellik, PlatformTextStyle.includeFontPadding özelliğini varsayılan olarak true değerine ayarlar (mevcut ayar). Bu sayede, gelecekte yazı tipi dolgusunu varsayılan olarak devre dışı bırakma işlemini Compose kitaplıklarıyla senkronize edebiliriz. Arka plan bilgisi için (Compose'da yazı tipi dolgusunu düzeltme) başlıklı makaleyi inceleyin. (I2aee8)
  • Uygulamaların Google Play Store'da yayınlanmasını engelleyen UpsideDownCake önizleme bağımlılığı, activity-compose aracılığıyla geri alındı. (I6443d)

Sürüm 1.2.0-alpha06

8 Mart 2023

androidx.wear.compose:compose-*:1.2.0-alpha06 iptal edilir. 1.2.0-alpha06 sürümü şu commit'leri içerir.

API Değişiklikleri

  • CurvedBox bileşenini ekleyin. Bu bileşen, bileşenleri kavisli dünyada üst üste yerleştirir. (I29200)
  • Genişletilebilir öğeler eklendi: ScalingLazyColumn içinde genişletilebilir öğe grubunu veya satır sayısının genişlediği metin gibi genişletilebilir tek bir öğeyi destekleyen iki yeni bileşen. (I95dd5)
  • Wear ekranlarında composable'ları önizlemek için aşağıdaki özel ek açıklamaları ekledik: WearPreviewSmallRound, composable'ı küçük ve yuvarlak bir cihazda önizler; WearPreviewLargeRound, composable'ı büyük ve yuvarlak bir cihazda önizler; WearPreviewSquare, composable'ı kare bir cihazda önizler. Ayrıca, aşağıdaki ve çoklu önizleme ek açıklamaları: WearPreviewFontScales, composable'ları birden fazla yazı tipi boyutuna sahip bir Wear cihazda önizlerken WearPreviewDevices, composable'ları farklı Wear cihazlarda önizler. Bu önizlemeleri kullanmak için en yeni Android Studio sürümünü (Giraffe Canary 6) veya sonraki bir sürümü kullanmanız gerekir. Bu ek açıklamaların amacınıza uygun olmadığını düşünüyorsanız Önizleme'yi kullanmaya devam edebilirsiniz. Önizleme, parametreler aracılığıyla daha fazla özelleştirmeyi destekler. (I397ff)
  • HierarchicalFocusCoordinator, geniş uygulama alanı nedeniyle temel Compose kitaplıklarına taşınmaya aday olarak kabul edildiğinden deneysel olarak işaretlendi. (I3a768)

Hata Düzeltmeleri

  • HierarchicalFocusCoordinator ile ilgili bir hata düzeltildi. focusEnabled parametresi için iletilen lambda değiştirildiğinde artık yeni lambda doğru şekilde kullanılıyor. (Icb353)
  • Button, CompactButton, Chip, CompactChip ve ToggleButton'de arka plan olarak ana renkler kullanılırken varsayılan devre dışı içerik rengini Arka Plan olarak güncelledik. Bu, erişilebilirlik için kontrastı iyileştirir. (I527cc)

Sürüm 1.2.0-alpha05

22 Şubat 2023

androidx.wear.compose:compose-*:1.2.0-alpha05 iptal edilir. 1.2.0-alpha05 sürümü şu commit'leri içerir.

API Değişiklikleri

  • PickerGroup API'si, minimum kısıtlamaların isteğe bağlı olarak composable'a yayılmasına izin verecek şekilde güncellendi. Doğru olarak ayarlandığında, üst composable'dan geçirilen minimum kısıtlamalara PickerGroup üzerinde izin verilir. Yanlış olarak ayarlanırsa PickerGroup, minimum kısıtlamaları sıfırlar. (I3e046)
  • Belirli bir Picker seçeneğine (I6fe67) programatik animasyonu desteklemek için Picker API'ye animateScrollToOption eklendi.

Hata Düzeltmeleri

  • Sağdan sola düzenleri desteklemek için HorizontalPageIndicator simgesini güncelledik. (Ia4359)
  • HorizontalPageIndicator'da sağdan sola düzen için ekran görüntüsü testleri eklendi (I6fbb8)
  • TestNavHostController kullanan SwipeDismissableNavHostTest için başka testler eklendi (I61d54)

Sürüm 1.2.0-alpha04

8 Şubat 2023

androidx.wear.compose:compose-*:1.2.0-alpha04 iptal edilir. 1.2.0-alpha04 sürümü şu commit'leri içerir.

Yeni Özellikler

  • PickerGroup, odak API'si kullanılarak birden fazla seçicinin birlikte işlenmesi için. Farklı seçiciler arasındaki odağı yönetir, seçicilerin parametrelere göre otomatik olarak ortalanmasını sağlar ve geliştiricilerin gruptaki etkinlikleri yönetirken farklı seçiciler arasındaki odağı değiştirmesine olanak tanır. TalkBack modunda PickerGroup, odağı gruptan seçilen Picker'a taşıyarak TalkBack odağını yönetir. (I60840)

API Değişiklikleri

  • Varsayılan aralık semantiğinin devre dışı bırakılmasını kolaylaştırmak için Stepper'a ek bir enableRangeSemantics parametresiyle aşırı yükleme ekledik (Ia61d4).

Hata Düzeltmeleri

  • Yatay olarak kaydırılan bir sayfada ScalingLazyColumn öğesinin iç içe yerleştirilmesine izin verilir (Iec3f8, b/266555016)
  • Stepper kdocs'un iyileştirilmesi ve StepperTest testlerinin temizlenmesi. (Ic118e)
  • androidx.navigation bağımlılığı 2.5.3 sürümüne (If58ed) güncellendi.

Sürüm 1.2.0-alpha03

25 Ocak 2023

androidx.wear.compose:compose-*:1.2.0-alpha03 iptal edilir. 1.2.0-alpha03 sürümü şu commit'leri içerir.

API Değişiklikleri

  • ScalingLazyColumn (ve ilişkili sınıflar) androidx.wear.compose.material.ScalingLazyColumn'ten andrdoidx.wear.compose.foundation.lazy.ScalingLazyColumn'e taşındı (taşıma işlemi için bu örneğe bakın). Bu yeni konum, compose.foundation.lazy.LazyColumn konumuna daha çok benziyor ve Material'ın görüş bildiren bir bileşeni olmadığı için daha doğal. Bu değişiklik, mevcut Material kitaplığıyla paralel olarak üzerinde çalışacağımız yeni bir Material3 kitaplığına hazırlık amacıyla şu anda yapılmaktadır. (I060e7)

Aşağıdaki değişiklikler, ScalingLazyColumn'dan Foundation.Lazy'a geçişin bir parçasıdır:

  • PositionIndicator apis targeting Material ScalingLazyColumn kullanımdan kaldırıldı. Lütfen Foundation.Lazy ScalingLazyColumn sürümüne güncelleyin. Ayrıca anchorType alanı ScalingLazyListLayoutInfo öğesine eklendi. (I29d95)
  • ScalingLazyColumn, Wear Compose Material paketinde (I16d34) kullanımdan kaldırıldı olarak işaretlendi.
  • ScrollAway değiştiricisini, Wear Compose'dan ScalingLazyListState kullanacak şekilde güncelledik ve Wear Compose Material'dan ScalingLazyListState alan aşırı yüklemeyi kullanımdan kaldırdık.Foundation.Lazy (Ifc42c)
  • Dialog API'leri, Foundation.Lazy yerine ScalingLazyListState kullanacak şekilde güncellendi ve Material ScalingLazyListState (Ic8960) kullanan aşırı yüklemeler kullanımdan kaldırıldı.
  • Seçici API'lerini Foundation.Lazy yerine ScalingParams kullanacak şekilde güncelledik ve Material ScalingParams kullanan aşırı yüklemelerin desteğini sonlandırdık. (Idc3d8)

Hata Düzeltmeleri

  • Yalnızca değer gerçekten değiştiğinde güncellemeleri göndermesini sağlayarak ScalingLazyListState.centerItemIndex içinde gereksiz yeniden oluşturmalara neden olan bir hata düzeltildi (Ia9f38).
  • SwipeToDismissBox (I3933b) performansını iyileştirdik.
  • Wear Compose Foundation'da (Ie00f9) ScalingLazyColumn için karşılaştırma testleri eklendi.
  • Material'daki bazı dahili ScalingLazyColumn sınıfları, Foundation.Lazy'daki (I38aab) eşdeğerlerini kullanacak şekilde güncelledik.
  • Seçici testlerindeki bazı sorunları düzelttik ve kaydırmayı ofsetle kontrol etmek için daha fazla test ekledik (I6ac34).
  • ScalingLazyColumn Entegrasyon Demoları'nı ScalingLazyColumn yerine Material Foundation.Lazy'a (Ic6caa) bağlı olacak şekilde taşıdık.
  • DatePicker demomuza (I961cd) isteğe bağlı fromDate/toDate parametreleri ekledik.

Sürüm 1.2.0-alpha02

11 Ocak 2023

androidx.wear.compose:compose-*:1.2.0-alpha02 iptal edilir. 1.2.0-alpha02 sürümü şu commit'leri içerir.

API Değişiklikleri

  • Android Compose kullanıcı arayüzü testleri artık boşta kalma durumuna geçmek için kareleri yürütürken (ör. waitForIdle aracılığıyla) her kare için düzen geçişleri çalıştıracak. Bu durum, düzen animasyonlarının tek tek karelerini onaylayan testleri etkileyebilir. (I8ea08, b/222093277)
  • minLines parametresi, BasicText ile tutarlı davranış için Wear Text'e eklendi (I24874).
  • CompactChipTapTargetPadding, dokümanlarda (If1e70, b/234119038) görünmesi için herkese açık hale getirildi.

Hata Düzeltmeleri

  • wear.compose paketleri için çok platformlu derlemeleri devre dışı bırakma (Iad3d7)
  • scrollToOption için doküman sorunlarını düzeltin (I6f9a0)
  • PlaceholderState.rememberPlaceholderState(), onContentReady lambda'sı çalıştırılırsa durumun güncellenmesi için rememberUpdatedState kullanacak şekilde güncellendi. (I02635, b/260343754)
  • Modifier.graphicsLayer'ye eklenen yeni birleştirme stratejisinden yararlanarak Picker bileşeninde görülen metin titreme sorununu düzelttik. (I99302)
  • DatePicker demomuzda (I660bd) titremeye neden olan bir hata düzeltildi.
  • 12 saatlik saat ve tarih seçici demolarının (I05e12) erişilebilirliği iyileştirildi.
  • Seçimi kaldırıldığında seçicilerin RSB değişikliklerinden etkilenmemesi için tarih ve saat seçici demolarımızı güncelledik (I4aecb).

Sürüm 1.2.0-alpha01

7 Aralık 2022

androidx.wear.compose:compose-*:1.2.0-alpha01 iptal edilir. 1.2.0-alpha01 sürümü şu commit'leri içerir.

Yeni Özellikler

  • Deneysel yer tutucu işlevini, içerik hazır olduğunda "Silme" efektinin hemen uygulanacak şekilde güncelledik. Artık bir sonraki animasyon döngüsünün başlaması beklenmeyecek. Ayrıca, ışıltı ve silme animasyonlarında da bazı güncellemeler yaptık. (I5a7f4)

API Değişiklikleri

  • Kompozisyonun alt ağaçlarının odaklanma etkin veya odaklanma devre dışı olarak işaretlenmesini sağlayan bir HierarchicalFocusCoordinatorcomposable ekledik.(I827cb)
  • ToggleButton için anlamsal rolü geçersiz kılacak yeni bir özellik ekledik.(I67132)
  • TimeTextDefaults.TimeFormat12Hours, TimeText'da AM/PM'yi kaldıracak şekilde güncellendi. Bu işlem, TimeText API'sindeki timeSource parametrelerinin varsayılan değerini değiştirir. (I1eb7f)
  • Çoklu seçici içeren ekranlarda erişilebilirliği artırmak için seçici API'yi genişlettik. Seçicinin kullanıcı kaydırma işlemi için etkin olup olmadığını kontrol etmek üzere yeni bir özellik userScrollEnabled eklendi. (I3c3aa)

Hata Düzeltmeleri

  • Son kullanıcı deneyimi özellikleriyle eşleşmesi için OutlinedButton/OutlinedCompactButton öğesinin varsayılan kenarlık genişliğini 2 dp'den 1 dp'ye düşürdük. (Icf84d)
  • Boş bir ScalingLazyColumn öğesine eklenen ilk öğenin yerine kaydırılıyormuş gibi görünmesinin etkisini azaltmak için içerik boş olduğunda tahmini autoCentering topPadding ekledik. Bu değişiklik, yüksekliği 0 dp olan bir öğe olduğunu varsayarak gereken üst dolgu miktarını hesaplar. ScalingLazyListAnchorType.ItemStart için doğru üst dolgu hesaplanır. ScalingLazyListAnchorType.ItemCenter için ise bu hesaplama yanlıştır. Öğelerin yüksekliği, içeriklerin doğru şekilde boyutlandırılması için gereklidir. Bu da öğelerin gerçek yüksekliğine bağlı olarak küçük bir kaydırma efektiyle sonuçlanır.(I239a4)
  • Wear platformuyla eşleşmesi için SwipeToDismiss animasyonuna uygulanan arka plan karartma katmanı güncellendi. (I9003e)
  • Sıfır boyutlu liste öğeleri için sıfıra bölme hatalarını önlemek amacıyla LazyListState ve ScalingLazyListState öğelerinin PositionIndicator işlenmesi düzeltildi.(Ic28dd)

Sürüm 1.1

Sürüm 1.1.2

8 Şubat 2023

androidx.wear.compose:compose-foundation:1.1.2, androidx.wear.compose:compose-material:1.1.2 ve androidx.wear.compose:compose-navigation:1.1.2 yayınlandı. 1.1.2 sürümü şu commit'leri içerir.

Hata Düzeltmeleri

  • Yalnızca değer gerçekten değiştiğinde güncellemeleri göndermesini sağlayarak ScalingLazyListState.centerItemIndex içinde gereksiz yeniden oluşturmalara neden olan bir hata düzeltildi (Ia9f38).

Sürüm 1.1.1

11 Ocak 2023

androidx.wear.compose:compose-foundation:1.1.1, androidx.wear.compose:compose-material:1.1.1 ve androidx.wear.compose:compose-navigation:1.1.1 yayınlandı. 1.1.1 sürümü şu commit'leri içerir.

Hata Düzeltmeleri

  • PlaceholderState.rememberPlaceholderState(), onContentReady lambda'sı çalıştırılırsa durumun güncellenmesi için rememberUpdatedState kullanacak şekilde güncellendi. (I02635, b/260343754)

Sürüm 1.1.0

7 Aralık 2022

androidx.wear.compose:compose-foundation:1.1.0, androidx.wear.compose:compose-material:1.1.0 ve androidx.wear.compose:compose-navigation:1.1.0 yayınlandı. 1.1.0 sürümü şu commit'leri içerir.

1.0.0 sürümünden beri yapılan önemli değişiklikler

Yeni Özellikler

  • Deneysel yer tutucu işlevini, içerik hazır olduğunda "Silme" efektinin hemen uygulanacak şekilde güncelledik. Artık bir sonraki animasyon döngüsünün başlaması beklenmeyecek. Ayrıca, ışıltı ve silme animasyonlarında da bazı güncellemeler yaptık. (I5a7f4)

Hata Düzeltmeleri

  • Son kullanıcı deneyimi özellikleriyle eşleşmesi için OutlinedButton/OutlinedCompactButton öğesinin varsayılan kenarlık genişliğini 2 dp'den 1 dp'ye düşürdük. (Icf84d)
  • Boş bir ScalingLazyColumn öğesine eklenen ilk öğenin yerine kaydırılıyormuş gibi görünmesinin etkisini azaltmak için içerik boş olduğunda tahmini autoCentering topPadding ekledik. Bu değişiklik, yüksekliği 0 dp olan bir öğe olduğunu varsayarak gereken üst dolgu miktarını hesaplar. ScalingLazyListAnchorType.ItemStart için doğru üst dolgu hesaplanır. ScalingLazyListAnchorType.ItemCenter için ise bu hesaplama yanlıştır. Öğelerin yüksekliği, içeriklerin doğru şekilde boyutlandırılması için gereklidir. Bu da öğelerin gerçek yüksekliğine bağlı olarak küçük bir kaydırma efektiyle sonuçlanır.(I239a4)
  • Wear platformuyla eşleşmesi için SwipeToDismiss animasyonuna uygulanan arka plan karartma katmanı güncellendi.(I9003e)
  • Sıfır boyutlu liste öğeleri için sıfıra bölme hatalarını önlemek amacıyla LazyListState ve ScalingLazyListState öğelerinin PositionIndicator işlenmesi düzeltildi.(Ic28dd)

Sürüm 1.1.0-rc01

9 Kasım 2022

androidx.wear.compose:compose-foundation:1.1.0-rc01, androidx.wear.compose:compose-material:1.1.0-rc01 ve androidx.wear.compose:compose-navigation:1.1.0-rc01 yayınlandı. 1.1.0-rc01 sürümü şu commit'leri içerir.

Hata Düzeltmeleri

  • Placeholders, ScrollAway, RadioButton, Switch, Checkbox, OutlinedButton, OutlinedCompactButton, OutlinedChip ve OutlinedCompactChip için temel profil kuralları ekledik. (I8249c)
  • Modifier.scrollAway içinde bir hata düzelttik. Belirtilen itemIndex geçersizse (örneğin, öğe dizini aralık dışındaysa) TimeText artık yine de gösterilecek. (I2137a)
  • SwipeToDismissBox animasyonunu platform uygulamasıyla eşleşecek şekilde güncelledik. İlk sıkma animasyonundan sonra, kapatma işlemi tetiklendiğinde ekran sağa doğru kaydırılıyor. (I41d34)
  • Optimizasyon amacıyla, her yeniden ölçümden sonra değiştiricinin yeniden oluşturulmasını önlemek için Modifier.scrollAway yalnızca ölçü bloğunun içindeki scrollState okunacak şekilde güncellendi. (I4c6f1)
  • Aynı composable'a uygulandığında Modifier.placeholder ve Modifier.placeholderShimmer için doğru sıralamayı göstermek amacıyla yer tutuculara doküman ve örnek ekledik. (Ie96f4, b/256583229)
  • Son kullanıcı deneyimi özellikleriyle eşleşmesi için OutlinedCompactChip/OutlinedChip öğesinin varsayılan kenarlık genişliğini 2 dp'den 1 dp'ye düşürdük. (Ib3d8e)
  • rememberPickerState'da güncellenen girişlerin kaydedilmemesi nedeniyle girişlerde yapılan değişikliklerden sonra composable'ların güncellenmemesine neden olan hata düzeltildi. (I49ff6, b/255323197)
  • Yer tutucularda bazı kullanıcı arayüzü güncellemeleri yaptık: 1) Işıltı gradyanını ekran boyutunun 1, 5 katı olacak şekilde değiştirdik, 2) Işıltı ilerlemesine yumuşatma (kübik bezier) ekledik ve 3) Silme animasyonunu hızlandırdık (250 ms). (Id29c1)
  • Yer tutucu silme efektinde, bileşenin ekrandaki konumu dikkate alınmadığı için çip ve kart arka planlarının biraz erken silinmesine neden olan bir kullanıcı arayüzü hatası düzeltildi. (I2c7cb)
  • Farklı kırpılmış katmanların alfa karıştırma riskini azaltmak için yer tutucu arka plan çizimini güncelledik. Bu sayede, mümkün olduğunda renkler katmanlanmak yerine birleştirilerek alttaki renklerin yer tutucu arka plan kenarlarından sızması önlenir. (I2ea26)
  • ScalingLazyListState.centerItemIndex/centerItemOffset hesaplamasını düzelttik. Artık iki öğe, görüntü alanı merkez çizgisinin iki tarafında yer alıyorsa en yakın olan centerItem olarak kabul edilecek. (I30709, b/254257769)
  • ScalingLazyListState.layoutInfo.visibleItemsInfo içinde, ScalingLazyColumn başlatma sırasında yanlış uzaklıklar bildiren bir hata düzeltildi. Artık tüm liste öğeleri görünür ve doğru uzaklıklara sahip olana kadar boş bir liste döndürülür. ScalingLazyListState.layoutInfo.visibleItemsInfo.isNotEmpty() işaretini gördüğünüzde ScalingLazyColumn başlatma işleminin tamamlandığı ve öğelerin görünür olduğu onaylanır. (I3a3b8)

Sürüm 1.1.0-beta01

24 Ekim 2022

androidx.wear.compose:compose-foundation:1.1.0-beta01, androidx.wear.compose:compose-material:1.1.0-beta01 ve androidx.wear.compose:compose-navigation:1.1.0-beta01 yayınlandı. 1.1.0-beta01 sürümü şu commit'leri içerir.

Wear OS 1.1 için Compose'da neler var?

Wear OS için Compose'un 1.1.0-beta01 sürümü, kitaplığın bu sürümünün özelliklerinin tamamlandığını ve API'nin kilitlendiğini belirtiyordu.

  • Wear Compose 1.1 sürümünde aşağıdaki yeni işlevler yer alıyor:
    • Seçici: Çoklu seçici ekranlarında ekran okuyucularla gezinilebilmesi ve içerik açıklamasına erişilebilmesi için seçicide erişilebilirlik iyileştirmeleri yapıldı.
    • Picker contentDescription parametresi artık yalnızca seçilen Picker seçeneği için kullanılır ve boş değer atanabilir bir dize alır (önceki commit'te, seçenekten içerik açıklamasına eşleme geçirmek gerekliydi ancak yalnızca seçilen seçenek kullanılıyordu).
    • Seçici öğeleri artık her zaman ortalanıyor. gradientRatio değerinin sıfır olarak ayarlanmasıyla hizalamanın değişmesine neden olan hata düzeltildi.
    • Chip/ToggleChip: Chip/ToggleChip için varsayılan gradyanları en yeni kullanıcı deneyimi spesifikasyonuna uygun hale getirmek üzere güncelledik. ChipDefaults.gradientBackgroundChipColors, %32,5 yerine birincil rengin %50'sinden başlayacak şekilde güncellendi.
    • Chip/ToggleChip - Çip şekillerini değiştirmek için aşırı yüklemeler eklendi
    • Chip/Button/ToggleButton - Çipler ve düğmeler için yeni bir ana hat stili ile ince kenarlıklı şeffaf Chip/Button sağlayan yeni OutlinedChip ve OutlinedButton composable'ları eklendi.
    • Kart: Kartlardaki varsayılan gradyanlar, en son kullanıcı deneyimi spesifikasyonuna uygun hale getirilmek üzere güncellendi. CardDefaults.cardBackgroundPainter, birincil rengin% 30'u ile başlayıp onSurfaceVariant renginin% 20'si ile bitecek şekilde güncellendi (önceki değerler% 20 ile% 10 onSurfaceVariant idi). ToggleChip.toggleChipColors, %75 yüzeyden% 32,5 birincil renge, %0 yüzeyden% 50 birincil renge değişen doğrusal bir gradyan olarak güncellendi.
    • Button/ToggleButton - Düğme şekillerini değiştirmek için özellikler eklendi.
    • Tema: MaterialTheme bölümündeki varsayılan renklerden bazıları, erişilebilirliği artırmak için güncellendi. Orijinal renkler yeterli kontrasta sahip olmadığından kullanıcılar, çip/kart/düğme arka planlarını tema arka plan renginden ayırt etmekte zorlanıyordu.
    • InlineSlider/Stepper - Talkback'ın bunları düğme olarak tanıması için düğme rolleri eklendi.
    • İskele: PositionIndicator artık yalnızca gereken alanı kaplayacak şekilde konumlandırılıyor ve boyutlandırılıyor. Örneğin, bu özellik sayesinde TalkBack'e anlamsal bilgiler eklendiğinde TalkBack, ekrandaki PositionIndicator öğesinin doğru sınırlarını elde eder.
    • CurvedText/TimeText - Kaydırma durumuna göre bir öğeyi dikey olarak görünümün içine/dışına kaydıran Modifier.scrollAway işlevi eklendi (Column, LazyColumn ve ScalingLazyColumn ile çalışmak için aşırı yüklemelerle). ScrollAway, genellikle kullanıcı bir öğe listesini yukarı doğru kaydırmaya başladığında TimeText öğesini görünümün dışına kaydırmak için kullanılır.
    • CurvedText/TimeText: CurvedTextStyle'de fontFamily, fontStyle ve fontSynthesis için destek eklendi. Bu özellikler curvedText ve basicCurvedText cihazlarda kullanılabilir.
    • CurvedText/TimeText - CurvedTextStyle üzerinde oluşturucuya ve kopyalama yöntemine fontWeight eklendi
    • ToggleControls: ToggleChip ve SplitToggleChip ile kullanılmak üzere animasyonlu Checkbox, Switch ve RadioButton açma/kapatma kontrolleri eklendi. Bunlar, ToggleChipDefaults tarafından sağlanan statik simgeler (switchIcon, checkboxIcon ve radioIcon) yerine kullanılabilir.
    • Yer tutucu: Deneysel yer tutucu desteği eklendi. Bu efekt, birlikte çalışmak üzere tasarlanmış üç farklı görsel efekt içerir.
    • İlk olarak, içerik yüklenirken normal arka planın üzerine çizim yapmak için Chip ve Kartlar gibi kapsayıcılarda kullanılan yer tutucu arka plan fırçası efekti.
    • İkincisi, yüklenen içeriğin üzerine stadyum şeklinde bir yer tutucu widget çizmek için kullanılan değiştirici (Modifier.placeholder()).
    • Üçüncüsü, verilerin yüklenmesini beklediğimizi kullanıcılara bildirmek için diğer efektlerin üzerine çizilen bir değiştirici gradyan/parıltı efekti (Modifier.placeholderShimmer()).
      • Bu efektlerin tümü, uyumlu olacak, parlayacak ve düzenli bir şekilde silinecek şekilde tasarlanmıştır.
  • Temel Compose bağımlılıkları 1.2'den 1.3'e güncellendi

API Değişiklikleri

  • Yazı tipi parametreleri (fontFamily, fontWeight, fontStyle ve fontSynthesis) artık doğrudan curvedText (Idc422) parametreleri olarak belirtilebilir.

Hata Düzeltmeleri

  • curveText ve basicCurvedText artık TalkBack ile düzgün şekilde çalışacak (bunlarla ilişkili, uygun boyutta ve yerleştirilmiş (ancak boş) bir compose-ui düğümü olacak ve içerik açıklaması olarak metin kullanılacak) (I7af7c, b/210721259)
  • Sıfırıncı seçeneğin görünümün merkezine kaydırılabilmesini sağlamak için Pickers dahili ScalingLazyColumn üzerinde PickerState.repeatedItems = false Picker ile autoCentering parametrelerinin açık bir ayarını eklerken oluşan hata düzeltildi. (I8a4d7)

Sürüm 1.1.0-alpha07

5 Ekim 2022

androidx.wear.compose:compose-foundation:1.1.0-alpha07, androidx.wear.compose:compose-material:1.1.0-alpha07 ve androidx.wear.compose:compose-navigation:1.1.0-alpha07 yayınlandı. 1.1.0-alpha07 sürümü şu commit'leri içerir.

Yeni Özellikler

  • Deneysel yer tutucu desteği eklendi. Bu efekt, birlikte çalışmak üzere tasarlanmış üç farklı görsel efekt içerir. İlk olarak, içerik yüklenirken normal arka planın üzerine çizim yapmak için Chip ve Kartlar gibi kapsayıcılarda kullanılan yer tutucu arka plan fırçası efekti. İkincisi, yüklenen içeriğin üzerine stadyum şeklinde bir yer tutucu widget çizmek için kullanılan değiştirici (Modifier.placeholder()). Üçüncüsü, verilerin yüklenmesini beklediğimizi kullanıcılara bildirmek için diğer efektlerin üzerine çizilen bir değiştirici gradyan/parıltı efekti (Modifier.placeholderShimmer()). Bu efektlerin tümü, uyumlu olacak, parlayacak ve düzenli bir şekilde silinecek şekilde tasarlanmıştır. (I3c339)

API Değişiklikleri

  • CurvedTextStyle'de fontWeight, fontFamily, fontStyle ve fontSynthesis için destek eklendi. Bu özellik curvedText ve basicCurvedText cihazlarda kullanılabilir. Bu parametreler, eğri metinde kullanılacak yazı tipini ve stilini belirtmek için kullanılabilir.(Iaa1a8),(I72759)
  • Modifier.scrollAway'nın uzaklık parametresi, Modifier.offset ile tutarlılık sağlamak için Dp olarak güncellendi (önceden piksel cinsindendi). Ayrıca, verimlilik için LayoutModifier olarak yeniden düzenlendi. (I9f94b)
  • Yeni açma/kapatma kontrolleri API'si kapsamında RadioButton’s circleColor öğesini ringColor olarak yeniden adlandırdık. (I28fa9)
  • Checkbox, Switch ve RadioButton için ToggleChip ve SplitToggleChip ile kullanılmak üzere animasyonlu açma/kapatma kontrolleri ekledik. Bunlar, ToggleChipDefaults tarafından sağlanan statik simgeler (switchIcon, checkboxIcon ve radioIcon) yerine kullanılabilir. (I8a8c4)

Sürüm 1.1.0-alpha06

21 Eylül 2022

androidx.wear.compose:compose-foundation:1.1.0-alpha06, androidx.wear.compose:compose-material:1.1.0-alpha06 ve androidx.wear.compose:compose-navigation:1.1.0-alpha06 yayınlandı. 1.1.0-alpha06 sürümü şu commit'leri içerir.

Yeni Özellikler

  • Kaydırma durumuna göre bir öğeyi dikey olarak görünümün içine/dışına kaydıran Modifier.scrollAway işlevini ekledik (Column, LazyColumn ve ScalingLazyColumn ile çalışmak için aşırı yüklemelerle birlikte). ScrollAway, genellikle kullanıcı bir öğe listesini yukarı doğru kaydırmaya başladığında TimeText öğesini görünümün dışına kaydırmak için kullanılır. (I61766)

Hata Düzeltmeleri

  • PositionIndicator artık yalnızca gereken alanı kaplayacak şekilde konumlandırılıyor ve boyutlandırılıyor. Örneğin, bu özellik sayesinde TalkBack'e anlamsal bilgiler eklendiğinde TalkBack, ekrandaki PositionIndicator öğesinin doğru sınırlarını elde eder. (Ie6106, b/244409133)

Sürüm 1.1.0-alpha05

7 Eylül 2022

androidx.wear.compose:compose-foundation:1.1.0-alpha05, androidx.wear.compose:compose-material:1.1.0-alpha05 ve androidx.wear.compose:compose-navigation:1.1.0-alpha05 yayınlandı. Version 1.1.0-alpha05 contains these commits.

Hata Düzeltmeleri

  • Talkback'in düğme olarak tanıması için InlineSlider ve Stepper'ye düğme rolleri eklendi. (Icb46c, b/244260275)
  • İskele'deki konum ve sayfa göstergelerinin z sırası düzeltildi. Göstergeler artık vinyetin üzerinde yer alacak ve vinyet varsa göstergeler vinyet tarafından gizlenmeyecek. (Ib988f, b/244207528)

Sürüm 1.1.0-alpha04

24 Ağustos 2022

androidx.wear.compose:compose-foundation:1.1.0-alpha04, androidx.wear.compose:compose-material:1.1.0-alpha04 ve androidx.wear.compose:compose-navigation:1.1.0-alpha04 yayınlandı. 1.1.0-alpha04 sürümü şu commit'leri içerir.

API Değişiklikleri

  • Orijinal renkler yeterli kontrasta sahip olmadığından erişilebilirliği artırmak için MaterialTheme'deki varsayılan renklerin birçoğunu güncelledik. Bu durum, kullanıcıların çip/kart/düğme arka planlarını tema arka plan renginden ayırt etmesini zorlaştırıyordu. Güncellenen renkler surface(0xFF202124->0xFF303133), onPrimary(0xFF202124->0xFF303133), onSecondary(0xFF202124->0xFF303133), primaryVariant(0xFF669DF6->0xFF8AB4F8) ve onError(0xFF202124->0xFF000000) şeklindedir. Renklerdeki nispeten küçük değişiklikler mevcut ekran görüntüsü testlerini etkileyebilir. (81ab09)

Hata Düzeltmeleri

  • ScalingLazyColumn içinde, az sayıda (genellikle tam olarak 2) liste öğesi içeren listelerin başlatma işleminin tamamlanmamasına ve sonuç olarak şeffaf olmasına neden olabilecek bir mantık hatası düzeltildi. (504347)

Sürüm 1.1.0-alpha03

10 Ağustos 2022

androidx.wear.compose:compose-foundation:1.1.0-alpha03, androidx.wear.compose:compose-material:1.1.0-alpha03 ve androidx.wear.compose:compose-navigation:1.1.0-alpha03 yayınlandı. 1.1.0-alpha03 sürümü şu commit'leri içerir.

Yeni Özellikler

  • Chips ve Buttons için yeni bir ana hat stili, ince kenarlıklı şeffaf Chip/Button sağlayan yeni OutlinedChip ve OutlinedButton composable'ları ekledik. (Id5972)

API Değişiklikleri

  • Düğme şekillerini değiştirmek için aşırı yüklemeler eklendi (Icccde)

Hata Düzeltmeleri

  • ToggleChip öğesinin açma/kapatma kontrol alanı boyutu, kullanıcı deneyimi spesifikasyonuyla eşleşmediği için düzeltildi. Kullanıcı deneyimi spesifikasyonunda, etiket ile 24x24 dp boyutundaki açma/kapatma kontrol simgesi alanı arasında 4 dp boyutunda bir ayırıcı olması gerektiği belirtiliyor. Bu da toplamda 28 dp genişlik anlamına geliyor. Ancak uygulama, yanlışlıkla 36x24.dp açma/kapatma kontrol alanı veriyor. Bu durumda, kullanılabilir metin etiketi alanından 8 dp çıkarılır. NOT: Bu hata düzeltmesi, metin etiketine ek alan sağlar ve sonuç olarak taşan metinlerin metin düzenini (olumlu yönde) etkileyebilir. ToggleChips içeren ekran görüntüsü testleriniz varsa bunların güncellenmesi gerekebilir. (I514c8, b/240548670)

Sürüm 1.1.0-alpha02

27 Temmuz 2022

androidx.wear.compose:compose-foundation:1.1.0-alpha02, androidx.wear.compose:compose-material:1.1.0-alpha02 ve androidx.wear.compose:compose-navigation:1.1.0-alpha02 yayınlandı. 1.1.0-alpha02 sürümü şu commit'leri içerir.

Yeni Özellikler

  • Wear OS için Compose bağımlılıklarını, temel Compose kitaplıklarında 1.2.0'dan 1.3.0-alpha0X'e geçirdik.

API Değişiklikleri

  • Çip şekillerini değiştirmek için aşırı yüklemeler eklendi (I02e87)

Hata Düzeltmeleri

  • Mevcut ölçeklendirme animasyonuyla tutarlı olması için iletişim kutusu gösterilirken/gizlenirken vinyetin görünürlüğünü animasyonlu hale getirdik. (Ida33e)
  • Kaydırma sırasında bazı aktarım davranışlarında sıfıra bölme hatasına neden olan hata düzeltildi. (I86cb6)
  • Devre dışı bırakılan arka plan renginin tamamen şeffaf olmasını sağlamak için ChipDefaults.childChipColor() bölümündeki bir hata düzeltildi. (I2b3c3, b/238057342)

Sürüm 1.1.0-alpha01

29 Haziran 2022

androidx.wear.compose:compose-foundation:1.1.0-alpha01, androidx.wear.compose:compose-material:1.1.0-alpha01 ve androidx.wear.compose:compose-navigation:1.1.0-alpha01 yayınlandı. 1.1.0-alpha01 sürümü şu commit'leri içerir.

API Değişiklikleri

  • Picker'ın contentDescription parametresi artık yalnızca seçilen Picker seçeneği için kullanılır ve boş değer atanabilir bir String alır (Daha önce, seçenekten içerik açıklamasına bir eşleme iletmek gerekliydi ancak yalnızca seçilen seçenek kullanılıyordu). (Ife6a7)
  • Çoklu seçici ekranlarında ekran okuyucularla gezinilebilmesi ve içerik açıklamasına erişilebilmesi için seçicide erişilebilirlik iyileştirmeleri yaptık (I64edb).

Hata Düzeltmeleri

  • Wear Compose kitaplığıyla birlikte gelen temel profil kurallarını güncelledik (I9c694).
  • Sağdan sola modunda çipteki gradyanın yönü düzeltildi. Önceden sol üstten sağ alta doğruydu, şimdi sağ üstten sol alta doğru. (Ic2e77)
  • Chip/ToggleChip/Card için varsayılan gradyanları en son kullanıcı deneyimi spesifikasyonuna uygun hale getirmek üzere güncelledik. ChipDefaults.gradientBackgroundChipColors, %32,5 yerine birincil rengin %50'sinden başlayacak şekilde güncellendi. CardDefaults.cardBackgroundPainter, %30 birincil ile başlayıp% 20 onSurfaceVariant ile bitecek şekilde güncellendi (önceki değerler% 20 ile başlayıp% 10 onSurfaceVariant ile bitiyordu). ToggleChip.toggleChipColors, %75 yüzeyden% 32,5 birincile, %0 yüzeyden% 50 birincile değişiyor. (I43bbd)
  • Arka planında açık renk kullanılması ihtimaline karşı, gradyan arka planlı Chip/ToggleChips simgelerinin düzgün şekilde görünmesini sağlamak için bu simgelerin arkasına arka plan rengi (MaterialTheme.color.surface) ekledik. (Ibe1a4, b/235937657)
  • Seçici öğeleri artık her zaman ortalanıyor. gradientRatio değerinin sıfır olarak ayarlanmasıyla hizalamanın değişmesine neden olan hata düzeltildi. (I712b8)

Sürüm 1.0

Sürüm 1.0.2

7 Eylül 2022

androidx.wear.compose:compose-foundation:1.0.2, androidx.wear.compose:compose-material:1.0.2 ve androidx.wear.compose:compose-navigation:1.0.2 yayınlandı. 1.0.2 sürümü şu commit'leri içerir.

Hata Düzeltmeleri

  • İskele'deki konum ve sayfa göstergelerinin z sırası düzeltildi. Göstergeler artık vinyetin üzerinde yer alacak ve vinyet varsa göstergeler vinyet tarafından gizlenmeyecek. (Ib988f, b/244207528)

Sürüm 1.0.1

24 Ağustos 2022

androidx.wear.compose:compose-foundation:1.0.1, androidx.wear.compose:compose-material:1.0.1 ve androidx.wear.compose:compose-navigation:1.0.1 yayınlandı. 1.0.1 sürümü şu commit'leri içerir.

Hata Düzeltmeleri

  • ScalingLazyColumn içinde, az sayıda (genellikle tam olarak 2) liste öğesi içeren listelerin başlatma işleminin tamamlanmamasına ve sonuç olarak şeffaf olmasına neden olabilecek bir mantık hatası düzeltildi. (076c61)

Sürüm 1.0.0

27 Temmuz 2022

androidx.wear.compose:compose-foundation:1.0.0, androidx.wear.compose:compose-material:1.0.0 ve androidx.wear.compose:compose-navigation:1.0.0 yayınlandı. 1.0.0 sürümü şu commit'leri içerir.

1.0.0 sürümünün temel özellikleri

  • Bu, Wear OS için Compose'un ilk kararlı sürümüdür (daha fazla bilgi edinin).
  • Wear OS için Compose, temel Compose kitaplıklarını temel alır. Giyilebilir cihazlara özel ek bileşenler ve uygun durumlarda, giyilebilir cihazlara göre uyarlanmış temel Compose bileşenlerinin alternatif uygulamalarını sağlar.
  • Wear Compose'daki temel bileşenlerin listesi için (Compose for Wear OS Beta01) sürüm notlarına bakın.

Hata Düzeltmeleri

  • Mevcut ölçeklendirme animasyonuyla tutarlı olması için iletişim kutusu gösterilirken/gizlenirken vinyetin görünürlüğünü animasyonlu hale getirdik. (Ida33e)
  • Kaydırma sırasında bazı aktarım davranışlarında sıfıra bölme hatasına neden olan hata düzeltildi. (I86cb6)
  • Devre dışı bırakılan arka plan renginin tamamen şeffaf olmasını sağlamak için ChipDefaults.childChipColor() bölümündeki bir hata düzeltildi. (I2b3c3, b/238057342)

Sürüm 1.0.0-rc02

22 Haziran 2022

androidx.wear.compose:compose-foundation:1.0.0-rc02, androidx.wear.compose:compose-material:1.0.0-rc02 ve androidx.wear.compose:compose-navigation:1.0.0-rc02 yayınlandı. 1.0.0-rc02 sürümü şu commit'leri içerir.

Hata Düzeltmeleri

  • Sağdan sola (RTL) modundaki kartlar için gradyan yönü düzeltildi. Önceden sol üstten sağ alta doğruydu, şimdi ise sağ üstten sol alta doğru. (Ic2e77)
  • Chip/ToggleChip/Card için varsayılan gradyanları en son kullanıcı deneyimi spesifikasyonuna uygun hale getirmek üzere güncelledik. ChipDefaults.gradientBackgroundChipColors, birincil rengin% 32,5'i yerine %50'siyle başlayacak şekilde güncellendi. CardDefaults.cardBackgroundPainter, birincil rengin% 30'undan başlayıp onSurfaceVariant'in% 20'sinde bitecek şekilde güncellendi (daha önce SurfaceVariant'ta% 20 ile% 10 arasındaydı). ToggleChip.toggleChipColors, %75 yüzeyden% 32,5 birincile, %0 yüzeyden% 50 birincile kadar değişen doğrusal bir gradyanı ifade eder. (I43bbd)
  • Arka planında açık renk kullanılması ihtimaline karşı, gradyan arka planlı Chip/ToggleChips simgelerinin düzgün şekilde görünmesini sağlamak için bu simgelerin arkasına arka plan rengi (MaterialTheme.color.surface) ekledik. (Ibe1a4, b/235937657)
  • Wear Compose kitaplığıyla birlikte gelen temel profil kurallarını güncelledik (I9c694).

Sürüm 1.0.0-rc01

15 Haziran 2022

androidx.wear.compose:compose-foundation:1.0.0-rc01, androidx.wear.compose:compose-material:1.0.0-rc01 ve androidx.wear.compose:compose-navigation:1.0.0-rc01 yayınlandı. 1.0.0-rc01 sürümü şu commit'leri içerir.

API Değişiklikleri

  • Compose kitaplıklarındaki arayüzler artık jdk8 varsayılan arayüz yöntemleri kullanılarak oluşturuluyor (I5bcf1).

Hata Düzeltmeleri

  • Gerekli olmadığı ve bir ScalinglazyColumn öğesinde ListHeader() ile Chip() bileşenleri karışık olarak bulunuyorsa sorunlara yol açabileceği için liste başlığındaki açık fillMaxWidth() çağrısını kaldırdık. Bu durumda, ListHeader öğeleri görünümde kaydırıldıkça genişlik artar veya azalır. (I37144, b/235074035)
  • ScalingLazyColumn içinde, 0. liste öğesi yeterince büyükse (doldurma dahil) liste öğelerinin kaydırılana kadar doğru şekilde çizilmemesine neden olabilecek bir hata düzeltildi (Ic6159, b/234328517).
  • Öğeler ekranın kenarına ulaştığında kullanıcı deneyimi spesifikasyon güncellemeleriyle eşleşmesi için ScalingLazyColumn kolaylaştırma özelliğinde küçük bir düzenleme yaptık. Eski değerler CubicBezierEasing(0.25f, 0.00f, 0.75f, 1.00f) -> yeni değerler CubicBezierEasing(0.3f, 0f, 0.7f, 1f). Eski davranışı korumak için scalingParams ScalingLazyColumn (Ie375c) öğesini geçersiz kılabilirsiniz.
  • Materyal erişilebilirlik kurallarına uymak için dokunma hedefi boyutunun en az 48 dp yüksekliğinde olmasını sağlamak amacıyla CompactChip simgesine dolgu ekledik. Bu durum, CompactChips kullanan düzenlerinizi etkileyebilir. Çünkü bu düzenler ek alan kaplar. (I3d57c)

Sürüm 1.0.0-beta03

1 Haziran 2022

androidx.wear.compose:compose-foundation:1.0.0-beta03, androidx.wear.compose:compose-material:1.0.0-beta03 ve androidx.wear.compose:compose-navigation:1.0.0-beta03 yayınlandı. 1.0.0-beta03 sürümü şu commit'leri içerir.

Yeni Özellikler

  • ScalingLazyColumn özelliğini Oluşturma @Preview modunda kullanıma sunduk. (I3b3b6, b/232947354)

API Değişiklikleri

  • Liste öğeleri sütunun tamamını doldurmadığında maksimum görünürlük için hizalanmalarını sağlamak amacıyla ScalingLazyColumn.horizontalAlignment özelliğinin varsayılan değerini Başlangıç'tan CenterHorizontally olarak değiştirdik. Önceki davranışa geri dönmek için horizontalAlignment = Alignment.Start.(I9ed4b)

Bilinen Sorunlar

  • CompactChip'in dokunma/dokunmatik yüksekliği, Materyal erişilebilirlik yönergelerinden daha küçük. Bu sorun, sonraki sürümde (15 Haziran) düzeltilecektir. CompactChip kullanıyorsanız bu durum, düzenlerinizi etkiler. CompactChip'ler artık üstte ve altta ek dolguya sahip olacak. Lütfen düzenlerinizi ayarlayıp test edin veya mevcut davranışı kullanmak için geçici çözüm olarak hata yorumlarına bakın. (b/234332135)

Hata Düzeltmeleri

  • TimeText üzerinde başlangıç metni ekleme veya kaldırma işlemini canlandıran yeni demo. (I16d75)
  • HorizontalPageIndicator.PagesState için test ekleme (I64ed0)
  • TimeText, kullanıcı deneyimi özelliklerine daha yakın şekilde güncelleniyor (Ib7ea1)

Sürüm 1.0.0-beta02

18 Mayıs 2022

androidx.wear.compose:compose-foundation:1.0.0-beta02, androidx.wear.compose:compose-material:1.0.0-beta02 ve androidx.wear.compose:compose-navigation:1.0.0-beta02 yayınlandı. 1.0.0-beta02 sürümü şu commit'leri içerir.

Yeni Özellikler

  • Seçici artık salt okunur modda olsa bile kaydırma etkinliklerine her zaman yanıt veriyor. Bu sayede kullanıcıların kaydırma yapabilmek için önce bir seçiciye dokunarak seçmesi gerekmez. Salt okunur modda, şu anda seçili olanın dışındaki seçenekler gradientColor içinde bir dolguyla gizlenir. (I72925)
  • Chip/ToggleChip/CompactChip/SplitToggleChip'nın kullanıcı deneyimi davranışını, varsayılan olarak fillMaxWidth yapmasını önleyecek şekilde değiştirdik. Bunun yerine, içeriklerine uyacak şekilde büyürler. Önceki davranışı korumak için modifier = Modifier.fillMaxWidth()(I60a2c, b/232206371) ekleyin.

Hata Düzeltmeleri

  • CurvedTextStyle oluşturucusu artık TextStyle değerini de dikkate alıyor. fontWeight(Bu, API'nin gelecekteki düzeltmelerinde oluşturucuya ve kopyalama yöntemlerine eklenebilir) (Ieebb9)
  • Kenardan kaydırma ile ilgili iyileştirmeler. Modifier.edgeSwipeToDismiss kullanıldığında ve kenar alanından sola kaydırma işlemi başlatıldığında, kaydırma yönü sağa değiştiğinde artık kaydırarak kapatma işlemi başlatılmaz. Daha önce, sola ve ardından sağa kaydırarak kapatmak için kaydırma özelliğini tetiklemek mümkündü.(I916ea)
  • HorizontalPageIndicator artık ekranda en fazla 6 sayfa gösteriyor. Toplamda 6'dan fazla sayfa varsa solda veya sağda yarım boyutlu bir gösterge gösterilir ve sayfalar arasında sorunsuz bir geçiş sağlanır.(I2ac29)
  • ScalingLazyColumn ve Picker'de geliştirilmiş varsayılan yapıştırma davranışı (I49539)
  • Kenardan kaydırma ile ilgili iyileştirmeler. Modifier.edgeSwipeToDismiss kullanıldığında, kaydırarak kapatma özelliği yalnızca ilk dokunuş kenara denk gelip sağa kaydırıldığında tetiklenir. Daha önce, kaydırma işlemi başlangıca ulaştığında ekranın herhangi bir yerinden kaydırarak kapatma özelliğini tetiklemek mümkündü.(I8ca2a)

Sürüm 1.0.0-beta01

11 Mayıs 2022

androidx.wear.compose:compose-foundation:1.0.0-beta01, androidx.wear.compose:compose-material:1.0.0-beta01 ve androidx.wear.compose:compose-navigation:1.0.0-beta01 yayınlandı. 1.0.0-beta01 sürümü şu commit'leri içerir.

Wear OS 1.0 için Compose'da neler var?

Kitaplık özelliklerinin tamamlanması ve API'nin kilitlenmesiyle Wear OS için Compose'un 1.0.0-beta01 sürümü önemli bir dönüm noktasıdır.

Wear Compose Material 1.0 sürümündeki bileşenler şunlardır:

  • Materyal Teması: Mobil için Compose MaterialTheme yerine kullanılır. Wear Materyal Tasarım kullanıcı deneyimi yönergelerini kutudan çıktığı gibi uygulayan giyilebilir cihazlarda bileşen oluşturmak için renkler, şekiller ve tipografi sağlar.
  • Button, CompactButton ve ToggleButton: Düğme, simge, resim veya kısa metin (maksimum 3 karakter) almak için tek bir alan sunar. Varsayılan, büyük veya küçük düğmeler için önerilen boyutlara sahip, dairesel şekilli. CompactButton, herhangi bir içeriği (simge, resim veya metin) almak için tek bir yuva sunar ve arka plan boyutu ekstra küçük olacak şekilde dairesel bir şekle sahiptir. CompactButton, tıklanabilir alanı artıran, arka planın etrafında isteğe bağlı şeffaf dolguya sahiptir. ToggleButton, herhangi bir içeriği (kısa metin, simge veya resim) almak için tek bir yuva sunan ve işaretli/işaretsiz olup olmadığını göstermek için renklendirme ve farklı simgelerle açık/kapalı (işaretli/işaretsiz) durumları olan bir düğmedir.
  • Kartlar: Bildirimler gibi uygulamalarla ilgili bilgileri göstermek için kullanılır. AppCard ve TitleCard ile farklı kullanım alanlarına yönelik esnek tasarım. Bu sayede, farklı düzenler elde edilebilir ve resimler kart içeriği veya arka plan olarak kullanılabilir.
  • Çipler: Düğmelere benzeyen ancak daha geniş bir alana ve etiketlere, ikincil etiketlere ve simgelere izin veren birden fazla yuvaya sahip stadyum şeklindeki bileşenler. Farklı boyutlarda ve arka plan olarak resim desteğiyle.
  • ToggleChip'ler ve SplitToggleChip'ler: İşaretli/işaretsiz durumu olan bir Chip ve bileşenin işaretli durumunu göstermek için anahtar veya radyo düğmesi gibi bir simge göstermek üzere ToggleControl yuvasının eklenmesi. Ayrıca SplitToggleChip simgesinin biri tıklanabilir, diğeri açılıp kapatılabilir olmak üzere iki dokunulabilir alanı vardır.
  • CircularProgressIndicator: İki varyantlı Wear Material ilerleme durumu göstergesi. Birincisi, devam eden bir görevin tamamlanma oranını ifade eder ve başlangıç ile bitiş açıları arasındaki dairesel parçada bir boşluğu destekler. İkincisi, belirtilmeyen bir bekleme süresi için belirsiz ilerleme olduğunu gösterir.
  • curvedText: CurvedLayouts öğesini açıklamak için curvedRow ve curvedColumn ile birlikte DSL'nin bir parçasını oluşturur. Bileşenleri dairesel cihazların etrafına yerleştirmek için kullanılır. CurvedLayout ve CurvedModifier hakkında daha fazla bilgi için aşağıdaki Wear Component Foundation bölümüne bakın (Bu, kavisli olmayan dünyadaki Değiştiriciler'e benzer bir rol oynar ve düzen, dolgu, gradyan vb. gibi çeşitli yönlerin yapılandırılmasına olanak tanır).
  • İletişim Kutusu, Uyarı ve Onay: İletişim kutusu, diğer tüm içeriklerin üzerinde katman oluşturacak şekilde tam ekran bir iletişim kutusu gösterir ve kaydırarak kapatmayı destekler. Uyarı veya Onay gibi Wear Materyal iletişim kutusu içeriği olması beklenen tek bir yuva alır. Uyarı, simge, başlık ve mesaj için yerleri olan, görüşe dayalı iletişim kutusu içeriğidir. Yan yana gösterilen iki negatif ve pozitif düğme için veya dikey olarak yerleştirilmiş bir veya daha fazla çip için aşırı yüklemeleri vardır. Onay, belirli bir süre boyunca mesaj gösteren, görüşe dayalı bir iletişim kutusu içeriğidir. Simge veya resim (animasyonlu olabilir) için bir yuvası vardır.
  • HorizontalPageIndicator: Yatay sayfa konumunu, giyilebilir cihazların form faktörüne uygun bir şekilde gösterir. Tüm ekranı kaplayacak ve yuvarlak cihazlarda kavisli bir gösterge gösterecek şekilde tasarlanmıştır. Eşlikçi sayfası görüntüleyicisiyle kullanılabilir.
  • Simge: Wear Material Teması'ndan renk ve alfa değerini alan Icon'un Wear uygulaması. Tıklanabilir simge için Düğme veya Çip bölümüne bakın.
  • Seçici: Seçilebilecek öğelerin kaydırılabilir listesini gösterir. Varsayılan olarak, öğeler her iki yönde de "sonsuza kadar" tekrarlanır. Seçilmeyen seçenekleri gizlemek için salt okunur modda görüntülenebilir.
  • PositionIndicator: Kaydırma konumunu veya diğer konumsal göstergeleri giyilebilir cihazın form faktörüne uygun bir şekilde gösterir. Tam ekranı kaplayacak şekilde tasarlanmıştır ve yuvarlak cihazlarda kavisli bir gösterge gösterir.
  • İskele: Temel Wear Material Design görsel düzen yapısını uygular. Bu bileşen, ekranı oluşturan çeşitli Wear Material bileşenlerini (ör. TimeText, PositionIndicator ve Vignette) bir araya getirmek, bunlar için uygun düzen stratejisini sağlamak ve bu bileşenlerin birlikte doğru şekilde çalışması için gerekli verileri toplamak üzere bir API sağlar.
  • ScalingLazyColumn: Wear Material Design dilinin önemli bir parçasını oluşturan, kaydırılabilir ölçeklendirme/balık gözü liste bileşeni. İçerik öğelerine ölçeklendirme ve şeffaflık efektleri uygular. ScalingLazyColumn, yalnızca gerektiğinde oluşturulan ve birleştirilen, potansiyel olarak çok sayıda içerik öğesini işleyebilecek şekilde tasarlanmıştır.
  • Kaydırma çubuğu: Kullanıcıların bir değer aralığından seçim yapmasına olanak tanır. Seçim aralığı, isteğe bağlı olarak ayırıcılarla görüntülenebilen bir çubuk olarak gösterilir.
  • Adım sayacı: Ekranın üst ve alt kısmındaki artırma/azaltma düğmelerini kullanarak bir değer aralığından seçim yapmaya olanak tanıyan, ortasında metin veya çip için bir yuva bulunan tam ekran bileşen.
  • SwipeToDismissBox: Kapatmak için kaydırma hareketini işler. Arka plan (yalnızca kaydırma hareketi sırasında gösterilir) ve ön plan içeriği için tek bir alan kullanır. SwipeDismissableNavHost kullanılarak androidx Navigation kitaplığıyla isteğe bağlı olarak birleştirilebilir (aşağıdaki Wear Compose Navigation kitaplığına bakın).
  • Metin: Wear Material Teması'ndan renk ve alfa değerini alan, Compose Material Text bileşeninin Wear'daki uygulamasıdır.
  • TimeText: Ekranın üst kısmında saati ve uygulama durumunu göstermeye yarayan bir bileşen. Yuvarlak ekranlarda kavisli metin kullanarak ekran şekline uyum sağlar.
  • Vinyet: Kaydırılabilir içerik kullanılırken ekranın üst ve alt kısımlarını bulanıklaştıran, iskelede kullanılmak üzere tasarlanmış bir ekran işleme tekniğidir.

  • Wear Compose Foundation'dan aşağıdaki bileşenler de dahil edilir:

  • CurvedLayout - Wear Foundation CurvedLayout, alt öğelerini bir yay üzerine yerleştiren ve gerektiğinde döndüren bir düzenlenebilir düzendir. Bu, bir halka parçasının segmentine kıvrılmış bir satır düzenine benzer. CurvedLayout içeriğinin bir composable lambda değil, DSL (alana özgü dil) olduğunu unutmayın. CurvedLayout'un DSL'sindeki tüm öğeler, CurvedModifier kullanılarak oluşturulan isteğe bağlı bir değiştirici parametreyi destekler.

  • basicCurvedText: CurvedLayout DSL'deki bir öğe olan basicCurvedText, geliştiricilerin bir dairenin eğriliğini takip ederek (genellikle dairesel bir ekranın kenarında) kolayca kavisli metin yazmasına olanak tanır. basicCurvedText, konumlandırmayı belirleme ve CurvedModifiers kullanma gibi en iyi deneyimi sağlamak için yalnızca CurvedLayout içinde oluşturulabilir. Material temalandırma kullandığı için çoğu durumda curvedText yerine curvedText kullanılması gerektiğini unutmayın.

  • curvedComposable: Normal composable içeriği CurvedLayout ile kullanılabilmesi için sarmalar. curvedComposable içinde birden fazla öğe varsa bunlar üst üste çizilir (ör. kutu). Bir eğri boyunca birden fazla composable yerleştirmek için her birini curvedComposable ile sarmalayın.

  • curvedRow ve curvedColumn: Row ve Column'a benzer. Öğeleri gerektiği gibi yerleştirmek için curvedRow ve curvedColumn, CurvedLayout içine yerleştirilebilir. curvedRow için açısal yerleşim yönü ve radyal hizalama belirtilebilir. curvedColumn için açısal hizalama ve radyal yön belirtilebilir.

  • CurvedModifier: Tüm kavisli bileşenler, CurvedModifier kullanılarak oluşturulabilen bir değiştirici parametreyi kabul eder. Arka plan, boyut, ağırlık ve dolgu desteklenir.

  • Wear Compose Navigation'dan aşağıdaki bileşen de dahil edilir:

  • SwipeDismissableNavHost: Geriye doğru gezinmenin kaydırma hareketiyle sağlandığı, bağımsız gezinmenin gerçekleşmesi için Compose hiyerarşisinde bir yer sağlar. İçerik, mevcut gezinme düzeyini gösteren bir SwipeToDismissBox içinde görüntülenir. Kaydırarak kapatma hareketi sırasında, varsa önceki gezinme düzeyi arka planda gösterilir.

  • Yayınlananlar hakkında daha fazla bilgi için çeşitli alfa sürümlerinin önceki sürüm notlarına bakın.

API Değişiklikleri

  • CurvedModifier.padding* işlevleri eklendi. Bunlar, kavisli bir bileşenin etrafına eklenecek ek alanı belirtmek için kullanılır. (I4dbb4)
  • CompositionLocal dahili sınıfı (I42490) kaldırıldı
  • Button, CompactButton ve ToggleButton simge boyutları için kılavuz olarak sabit değerler ekledik. (I57cab)
  • AppCard ve TitleCard öğelerine etkin parametre ekleyin. Artık androidx.compose.material Kartları'na benzer bir API'ye sahipler. Parametre false olarak ayarlandığında kart tıklanamaz. (Idc48d, b/228869805)

Hata Düzeltmeleri

  • Stepper artık alt/üst sınırlara ulaşıldığında azaltma ve artırma düğmelerini devre dışı bırakıyor (ve ContentAlpha.disabled'ı iconColor'a uyguluyor) (I4be9f)
  • Kaydırma sırasında görünen metinde titremeyi önlemek için, seçici içeriklerinin gradyanla çizilmesi durumunda bu içeriklerin etrafına 1 dp dolgu ekledik. (I0b7b9)
  • PositionIndicator için ekran görüntüsü testleri ekleyin (I5e8bc)
  • AppCard ve TitleCard için daha fazla test ekleyin (I85391, b/228869805)

Sürüm 1.0.0-alpha21

20 Nisan 2022

androidx.wear.compose:compose-foundation:1.0.0-alpha21, androidx.wear.compose:compose-material:1.0.0-alpha21 ve androidx.wear.compose:compose-navigation:1.0.0-alpha21 yayınlandı. 1.0.0-alpha21 sürümü şu commit'leri içerir.

Yeni Özellikler

  • Kavisli bir öğenin arka planını belirtmek için yeni kavisli değiştiriciler eklendi: CurvedModifier.background, .radialGradientBackground ve .angularGradientBackground (I8f392)
  • Eğri metin taşma modunun (kırpma/üç nokta/görünür) belirtilmesine izin verilir. (I8e7aa)
  • Oluşturma'dakiyle benzer olan CurvedModifier.weight değiştiricisi eklendi. Bu, curvedRow ve CurvedLayout'un (genişlik için) çocuklarında ve curvedColumn'un (yükseklik için) çocuklarında kullanılabilir. (I8abbd)
  • Kavisli bir öğenin boyutunu belirtmek için CurvedModifier.size, .angularSize ve .radialSize değiştiricileri eklendi. (I623c7)

API Değişiklikleri

  • Wear Compose API'de arka planın her zaman renkten önce gelmesini sağlamak için parametreleri yeniden sıralayın (I43208).
  • Saat yönünde ve insideOut parametreleri kaldırıldı ve yeni sınıflarda daha açıklayıcı sabitlerle değiştirildi. Kavisli düzen yönü artık LayoutDirection değerini dikkate alabilir ve belirtilmediğinde devralınır (If0e6a).
  • ScalingLazyColumn ile ilgili bir API sorununu düzeltmek için autoCenter: Boolean yerine autoCenter: AutoCentringParams kullanmaya başladık. (Ia9c90)
  • Renk, simge/toggleControl yuvasına uygulandığı için API genelinde iconTintColor ve toggleControlTintColor, iconColor ve toggleControlColor olarak yeniden adlandırıldı (Chip/ToggleChip/Dialog/Slider/Stepper/...). (Ied238)
  • PageIndicatorStyle enum'ını değer sınıfına yeniden yazma (I2dc72)
  • Geliştiricilere düzen varsayımlarının ne olduğunu belirtmek için Composables'ımızdaki bazı alanlara RowScope/ColumnScope/BoxScope ekledik. Bu sayede geliştiriciler, bazı yuva içeriklerinde ek değiştiriciler kullanabilir ve ek düzen öğeleri sağlamak zorunda kalmaz. Ayrıca, AppCard/TitleCard renklerinde bazı küçük güncellemeler yaptık. Böylece timeColor ve appColor varsayılan olarak contentColor olur. Gerekirse bu özelliklerin tümü ayrı ayrı geçersiz kılınabilir. (I26b59)
  • SwipeToDismissBoxState.Companion nesnesini gizli yapma (I39e84)
  • InlineSlider ve Stepper için parametre sırasını düzeltin. API yönergelerine uymak için yapılan basit değişiklik (I11fec)
  • Kullanılmadığı için SwipeToDismissBoxState ile ilgili Tasarruf Etme nesnesini kaldırdık. (Ifb54e)
  • CompactChip uygulamasını en yeni kullanıcı deneyimi spesifikasyonuna uygun hale getirmek için güncelledik. Doldurma, yatay = 12 dp ve dikey = 0 dp olarak azaltıldı. Etiket yazı tipi düğmeden caption1'e değiştirildi. Önerilen simge boyutları, hem simge hem de etiket olduğunda 20x20, yalnızca simge içeren kompakt çip için ise 24x24'tür. Yalnızca simge kullanım alanında, simgenin ortada hizalandığından da emin olduk. (Iea2be)
  • Geliştiricilerin uygulanan contentPadding ve autoCenteringPadding miktarını bilmesini sağlamak için ScalingLazyListLayoutInfo'ya bir dizi yeni alan ekledik. Bunlar, geliştiricilerin hızlıca kaydırma/ekranı kaydırma (I7577b) hesaplaması yaparken faydalı olabilir.
  • Dialog için giriş/çıkış geçişleri uyguladık. Bir showDialog parametresi eklendi ve iletişim kutusu artık kendi görünürlüğünü kontrol ediyor (bu, iletişim kutusu gösterildiğinde/gizlendiğinde iletişim kutusunun giriş ve çıkış animasyonlarını çalıştırmasını sağlar). Kullanıcı, kaydırarak kapatma işlemiyle iletişim kutusundan çıktığında son sahne animasyonunun oynatılmadığını unutmayın. Ayrıca, kısa süre önce eklenen SwipeToDismissBox aşırı yüklemesinde eyalet için varsayılan bir değer de ekledik. (I682a0)
  • Uluslararasılaştırma (i18n) ve erişilebilirlik (a11y) desteğini iyileştirmek için ToggleChip ve SplitToggleChip öğelerini, toggleControl yuvası için varsayılan değer içermeyecek şekilde değiştirdik. Ayrıca, ToggleChipDefaults yöntemini de değiştirdik. Bu nedenle, aşağıdaki yöntemler artık Icon yerine ImageVector döndürüyor (bu yöntemler artık @Composables döndürmediğinden küçük harfle başlayacak şekilde değiştirildi). SwitchIcon()->switchIcon(), CheckboxIcon->checkboxIcon() ve RadioIcon()->radioIcon(). Bu değişiklik, geliştiricilerin uygun bir contentDescription grubuyla kendi Icon() composable'larını oluşturmasına olanak tanır ve bunu teşvik eder. (I5bb5b)
  • SwipeDismissableNavHost öğesine SwipeDismissableNavHostState parametresini ekledik. Bu, gezinme hedefi olarak kullanılan ekranlarda kenardan kaydırma hareketinin kullanılmasını destekler. Bunun nedeni, artık kenardan kaydırma gerektiren ekranlarda hem SwipeDismissableNavHostState hem de Modifier.edgeSwipeToDismiss öğesini başlatmak için SwipeToDismissBoxState öğesinin yükseltilip kullanılabilmesidir. (I819f5, b/228336555)

Hata Düzeltmeleri

  • Kavisli düzenlerin gerektiğinde güncellendiğinden emin olun. (Ie8bfa, b/229079150)
  • https://issuetracker.google.com/issues/226648931 (Ia0a0a, b/226648931) ile ilgili hata düzeltildi.
  • Gereksiz deneysel ek açıklamalar kaldırıldı (I88d7e)

Sürüm 1.0.0-alpha20

6 Nisan 2022

androidx.wear.compose:compose-foundation:1.0.0-alpha20, androidx.wear.compose:compose-material:1.0.0-alpha20 ve androidx.wear.compose:compose-navigation:1.0.0-alpha20 yayınlandı. Version 1.0.0-alpha20 contains these commits.

Yeni Özellikler

  • SwipeToDismiss için edgeSwipeToDismiss değiştiricisini ekleyin. swipeToDismiss öğesinin yalnızca görüntü alanının sol kenarında etkin olmasına izin verir. Ekranın ortasının yatay sayfalama yapması gerektiğinde kullanılır. Örneğin, haritada 2 boyutlu kaydırma veya sayfalar arasında yatay kaydırma.(I3fcec, b/200699800)

API Değişiklikleri

  • CurvedModifiers temel uygulaması, kavisli içeriği özelleştirme yöntemlerinin kullanıma sunulmasının önünü açar (ancak henüz CurvedModifiers sağlanmamıştır ve özel değiştiriciler oluşturma özelliği daha sonra kullanıma sunulabilir) (I9b8df)
  • EdgeSwipeDaha iyi anlaşılması için değiştirici dokümanları ve varsayılan değerler güncellendi .(I6d00d)
  • İskelete PageIndicator yuvasını ekleyin. PageIndicator öğesini doğrudan Scaffold'a ekleyerek yuvarlak cihazlarda doğru şekilde gösterilmesini sağlayabiliriz. (Ia6042)
  • InlineSlider ve Stepper parametrelerinden varsayılan simgeleri kaldırın. Bu sayede geliştiriciler, yerelleştirme ve erişilebilirlik şartlarına daha fazla dikkat edebilir. Varsayılan simgelerin kullanımları demolar ve örneklerde gösterildi. (I7e6fd)
  • Sondaki ve baştaki parametre adlarını TimeText'te Başlangıç ve Bitiş ile değiştirme (Iaac32)
  • Kaydırma hareketi tamamlandığında bir gezinme etkinliğini tetiklemeye yönelik yaygın kullanımı desteklemek için SwipeToDismissBox parametresi içeren bir onDismissed aşırı yüklemesi ekledik. (I50353, b/226565726)
  • TimeText kullanımından ExperimentalWearMaterialApi ek açıklaması kaldırıldı (Ide520)
  • ScalingLazyList/Column kapsamı ve bilgi arayüzleri, harici geliştiricilerin uygulaması için tasarlanmadığından mühürlenmiş olarak işaretlendi. Bu sayede, gelecekte ikili uyumluluğu bozacak değişiklikler yapmadan bu arayüzlere yeni üyeler ekleyebileceğiz. (I7d99f)
  • Picker'a yeni bir flingBehaviour özelliği ve kaydırma davranışının yapılandırılmasını sağlayan bir PickerDefaults.flingBehaviour() yöntemi (ör. RSB desteği ekleme) ekledik. PickerState artık ScrollableState arayüzünü uyguluyor. (Ib89c7)

Hata Düzeltmeleri

  • Wear Compose kitaplıkları için Android Çalışma Zamanı (ART) temel profil kurallarını güncelleyin. ART, uygulamanın performansını artırmak için uygulamanın belirli bir alt kümesini önceden derlemek üzere cihazlardaki profil kurallarından yararlanabilir. Bunun, hata ayıklanabilir uygulamalar üzerinde hiçbir etkisi olmayacağını unutmayın. (Iaa8ef)
  • Dokümanları iyileştirme (I2c051)

Sürüm 1.0.0-alpha19

23 Mart 2022

androidx.wear.compose:compose-foundation:1.0.0-alpha19, androidx.wear.compose:compose-material:1.0.0-alpha19 ve androidx.wear.compose:compose-navigation:1.0.0-alpha19 yayınlandı. 1.0.0-alpha19 sürümü şu commit'leri içerir.

API Değişiklikleri

  • CurvedRow, CurvedLayout olarak yeniden adlandırıldı ve DSL ile kapsam olacak şekilde yeniden düzenlendi. Bu DSL kullanılarak, bir dizi iç içe yerleştirilmiş curvedRow ve curvedColumn (Satır ve Sütun'un eğimli düzendeki eşdeğerleri) kullanılarak daha karmaşık kavisli düzenler belirtilebilir. Bu düzen öğelerinde üç öğe kullanılabilir: curvedComposable (@Composable eklemek için), basicCurvedText (temelin kavisli metni) ve curvedText (malzemeye duyarlı kavisli metin). (Ib776a)
  • PositionIndicator için tarafı yapılandırılabilir hale getirin. Temel PositionIndicator'ın konumu artık End (düzen yönüne duyarlı), OppositeRsb (kendisini fiziksel RSB'nin karşısına yerleştirmek için ekran döndürmeyi dikkate alır) veya mutlak Left (Sol) ve Right (Sağ) olarak yapılandırılabilir. (I2f1f3)
  • SwipeToDismissBox için SwipeDismissTarget.Original'ı SwipeToDismissValue.Default, SwipeDismissTarget.Dismissal'ü ise SwipeToDismissValue.Dismissed olarak yeniden adlandırdık. Ayrıca SwipeToDismissBoxDefaults.BackgroundKey ve SwipeToDismissBoxDefaults.ContentKey seçeneklerini sırasıyla SwipeToDismissKeys.Background ve SwipeToDismissKeys.Content bölümlerine taşıdık. (I47a36)
  • Aynı anda yalnızca bir seçicinin düzenlenebildiği, birden fazla seçici içeren ekranlar için seçiciye salt okunur modu ekledik. Seçici salt okunur olduğunda, şu anda seçili olan seçeneği ve varsa bir etiketi gösterir. (I879de)
  • SwipeToDismissBoxState, ExperimentalWearMaterialApi kapsamını artık dahili olarak kullanılan Modifier.swipeable ve SwipeableState ile sınırlamak için yeniden düzenlendi. SwipeToDismissBoxState artık yaygın kullanım alanlarını desteklemek için currentValue, targetValue, isAnimationRunning ve snapTo üyelerine sahip. Başka özelliklerin de kullanıma sunulmasını istiyorsanız lütfen bize bildirin. Ayrıca, kaydırma uzaklığı bir sabitleme noktasının yuvarlama hatası içinde olduğunda SwipeableState davranışıyla ilgili sorun da düzeltildi. (I58302)

Hata Düzeltmeleri

  • ScalingLazyColumn içeriğinin kaydırılıp kaydırılamayacağını algılamak için kod basitleştirildi ve düzeltildi (kaydırma çubuğu gösterip göstermeyeceğimize karar vermek için kullanılır) (I7bce0)
  • Birden fazla durumla kullanıldığında ve bunlar arasında geçiş yapıldığında konum göstergesinde oluşan hata düzeltildi (I320b5).
  • Wear OS için Compose'un varsayılan tema tipografisini/yazı tiplerini en son kullanıcı deneyimi kılavuzumuza uygun şekilde güncelledik. display1 (40.sp) ve display2 (34.sp) değerlerinin artık önceki değerlerinden daha küçük olduğunu ve satır yüksekliği ile satır aralığında çeşitli küçük güncellemeler yapıldığını belirtmek isteriz. (Ie3077)
  • SwipeToDismissBox hareketine direnç ekledik. Böylece hareket yalnızca kapatmak için kaydırıldığında gerçekleşecek ve ters yönde hareket olmayacak. (Ifdfb9)
  • CircularProgressIndicator işlevlerinin varsayılan parametre değerlerinden bazılarını, Wear Material Design kullanıcı deneyimi yönergeleriyle uyumlu hale getirmek için değiştirdik. Dönen/Belirsiz sürümde boyut (40->24.dp), indicatorColor (primary->onBackground), trackColor şeffaflığı (30%->%10) ve kontur genişliği (4->3dp) güncellendi. İlerleme/Belirgin sürümünde trackColor şeffaflığı (%30-%10) güncellendi. (I659cc)
  • ScalingLazyColumn varsayılan ölçeklendirme parametrelerini en yeni Wear Materyal Tasarım kullanıcı deneyimi spesifikasyonlarına uygun şekilde güncelledik. Görsel olarak bu durum, liste öğelerinin liste merkezine daha yakın ölçeklendirilmeye başlamasına ancak liste kenarında daha önce olduğundan daha az ölçeklendirilmesine neden olur. (Ica8f3)
  • Animasyonun sonunu iyileştirmek için ScalingLazyColumnDefaults.snapFlingBehavior üzerinde bazı düzenlemeler yapıldı (If3260)

Sürüm 1.0.0-alpha18

9 Mart 2022

androidx.wear.compose:compose-foundation:1.0.0-alpha18, androidx.wear.compose:compose-material:1.0.0-alpha18 ve androidx.wear.compose:compose-navigation:1.0.0-alpha18 yayınlandı. 1.0.0-alpha18 sürümü şu commit'leri içerir.

API Değişiklikleri

  • PositionIndicator'da çeşitli iyileştirmeler yapıldı: ShowResult, PositionIndicatorVisibility olarak yeniden adlandırıldı. Gerekmeyen durumlarda yeniden hesaplamayı önlemek için bazı performans iyileştirmeleri (Iaed9d)
  • SplitToggleChip için önerilen renklendirme güncellendi. SplitToggleChip'ler artık işaretlendiğinde veya işareti kaldırıldığında düz renkli bir arka plana sahip. ToggleControl'ün renklendirmesi, bileşenin işaretlenip işaretlenmediğinin birincil göstergesi. Yeni renk şemasını desteklemek için yeni bir ToggleDefaults.splitToggleChipColors() ekledik. Ayrıca, splitBackgroundOverlayColor (I7e66e) yöntemini kaldırarak toggleChipColors() yöntemlerini basitleştirdik.
  • Kayan nokta matematiksel hassasiyeti nedeniyle orijinal öğe boyutunu ölçeklendirilmiş boyutu ve ölçeklendirme faktörünü kullanarak hesaplamak güvenli olmadığından ScalingLazyListItemInfo özelliğine unadjustedSize özelliği eklendi. (I54657, b/221079441)
  • HorizontalPageIndicator ekleyin. Toplam sayfa sayısını ve seçili sayfayı gösterir. Cihazın şekline bağlı olarak doğrusal veya kavisli olabilir. Ayrıca, her göstergenin görsel olarak nasıl temsil edileceğini tanımlayan özel gösterge şeklini de destekler. (Iac898)
  • numberOfOptions özelliğinin güncellenebilmesi için PickerState güncellendi. Bu, seçilen aya bağlı olarak ayın gün sayısının değiştiği DatePicker gibi kullanım alanlarını destekler. PickerState için oluşturucu parametresi, initialNumberOfOptions olarak değiştirildi. (Iad066)
  • Kaydırma çubuğu olduğunda ve kaydırılamadığında PositionIndicator simgesini gizleyin. (Id0a7f)
  • Tam ekran iletişim kutusu bileşenimiz artık Scaffold ile tutarlılık sağlamak için PositionIndicator ve Vignette gösteriyor. Ayrıca artık Column yerine ScalingLazyColumn kullanıyoruz. Bu da iletişim kutusu içeriklerinin artık ScalingLazyListScope içinde olduğu (ve genellikle item { /* content */ } ile kapatılması gerektiği) anlamına geliyor. İletişim kutusu, verticalArrangement parametresini buna göre destekler. (Idea13)
  • Tasarımcıların ve geliştiricilerin API'de gezinmesine yardımcı olmak için ToggleChip ve SplitToggleChip toggleIcon özelliğinin adını, Material Design ile daha iyi uyum sağlayacak şekilde toggleControl olarak değiştirdik. (If5921, b/220129803)
  • Wear Material Theme Typology'ye yeni bir giriş olan caption3'ü ekledik.Caption3, yasal metinler gibi çok uzun yazılar için kullanılan küçük bir yazı tipidir. (I74b13, b/220128356)

Hata Düzeltmeleri

  • Oraya ulaştığımızda tutturma animasyonunu durdurun. (Idb69d)
  • PositionIndicator'daki değişiklikleri canlandırın. (I94cb9)
  • Kullanıcı arayüzü/kullanıcı deneyimi geri bildirimlerine dayanarak ScalingLazyColumn otomatik ortalama özelliğini, yalnızca dizin değeri ScalingLazyListState.initialCenterItemIndex veya daha yüksek olan öğelerin görünüm alanının ortasına kadar tamamen kaydırılabilmesini sağlayacak kadar alan sunacak şekilde değiştirdik. Bu sayede geliştiriciler, başlangıçta öğeyle ilgili bir veya iki öğeyi ortada kaydırılamayacak şekilde yerleştirebilir. Bu durumda, otomatik ortalama ScalingLazyColumn, initialCenterItemIndex/initialCenterItemScrollOffset (I22ee2) üzerinde kaydırma yapamaz.
  • Tarih seçici için bir demo ekledik ve PickerState'da, initiallySelectedOption'ın seçici gösterilene kadar uygulanmamasıyla ilgili bir hata düzelttik. (Id0d7e)
  • Daha geniş ScalingLazyColumn öğelerin yuvarlak ekranlarda kırpılmasını azaltmak için varsayılan yatay içerik dolgusunu 8 dp'den 10 dp'ye çıkardık. (I0d609)
  • Kaydırma sırasında PositionIndicator simgesinin gösterildiğinden emin olun. (Ied9a2)

Sürüm 1.0.0-alpha17

23 Şubat 2022

androidx.wear.compose:compose-foundation:1.0.0-alpha17, androidx.wear.compose:compose-material:1.0.0-alpha17 ve androidx.wear.compose:compose-navigation:1.0.0-alpha17 yayınlandı. 1.0.0-alpha17 sürümü şu commit'leri içerir.

Yeni Özellikler

  • ScalingLazyColumn ile kullanılabilecek snap desteği eklendi. flingBehavior = ScalingLazyColumnDefaults.flingWithSnapBehavior(state) özelliğini ayarlayarak tutturma desteğini etkinleştirin. (I068d3, b/217377069)
  • 24 saatlik veya 12 saatlik saatte zaman seçmek için kullanılan seçiciyle ilgili demolar ekledik. (Ie5552)

API Değişiklikleri

  • Kare cihazda (Iea76e) TimeText özel yazı tipleri ve stilleriyle ilgili sorun düzeltildi.
  • ScalingLazyListLayoutInfo artık reverseLayout, viewportSize ve LazyListLayoutInfo'dekiyle eşleşen yön özelliklerine sahip (I4f258, b/217917020)
  • ScalingLazyColumn artık LazyList ile eşleşen bir userScrollEnabled özelliğine sahip (I164d0, b/217912513)
  • Seçiciler artık varsayılan olarak üstte ve altta renk geçişine sahip (Iab92a)

Hata Düzeltmeleri

  • ScalingLazyColumn öğesini, artık üst öğesindeki tüm alanı doldurmayacak şekilde değiştirdik. Bunun yerine, boyutunu içeriğinin boyutundan alır. Bu, LazyColumn davranışıyla tutarlılık sağlar. Eski davranışı geri yüklemek istiyorsanız Modifier.fillMaxWidth()/width()/widthIn() değerini ScalingLazyColumn (I51bf8) öğesine iletin.
  • Geri gezinme yığını boş olduğunda tetiklenen SwipeDismissableNavHost.kt içindeki istisna mesajını iyileştirdik. (I1b1dc)

Sürüm 1.0.0-alpha16

9 Şubat 2022

androidx.wear.compose:compose-foundation:1.0.0-alpha16, androidx.wear.compose:compose-material:1.0.0-alpha16 ve androidx.wear.compose:compose-navigation:1.0.0-alpha16 yayınlandı. 1.0.0-alpha16 sürümü şu commit'leri içerir.

Yeni Özellikler

  • CircularProgressIndicator ekleyin. İlerleme göstergeleri, bir sürecin uzunluğunu veya belirtilmemiş bir bekleme süresini gösterir. Tam ekran kullanıldığında TimeText veya diğer bileşenler için boşluk (kesik) desteklenir. (Iab8da)

API Değişiklikleri

  • Seçicilerde artık flingBehavior parametresi var. Varsayılan değer, kaydırma/hızlı kaydırma sırasında en yakın seçeneğe geçmelerini sağlar. (I09000)
  • InlineSlider ve Stepper için ek tam sayı API'si (I1b5d6)

Hata Düzeltmeleri

  • ScalingLazyListState için varsayılan initialCenterItemIndex değerini 0->1 olarak değiştirdik. Bu, durum oluşturma sırasında ScalingLazyListState.rememberScalingLazyListState(initialCenterItemIndex =) ile geçersiz kılınmadığı sürece, 2. liste öğesinin (index == 1) başlatma sırasında görüntü alanının ortasına, 1. öğenin (index == 0) ise önüne yerleştirileceği anlamına gelir. Bu sayede, görüntü alanının büyük bir kısmı liste öğeleriyle doldurulacağından kutudan çıkarıldığında daha iyi bir varsayılan görsel efekt elde edilebilir. (I0c623, b/217344252)
  • Çok sayıda liste öğesi çizilebilmesi için (bazı öğelerin boyutu küçültülse bile) sağlanan ScalingLazyColumn varsayılan extraPadding değerini% 10'dan %5'e düşürdük. Bu, görüntü alanında görünmeyebilecek ek liste öğelerinin oluşturulmasını önler. Standart olmayan scalingParams kullanılıyorsa (örneğin, daha fazla ölçeklendirme) geliştirici, viewportVerticalOffsetResolver kullanarak ek dolguyu ayarlayabilir. (I76be4)
  • Kare cihazda (Ibd3fb) TimeText'in birden fazla satırda görünmesiyle ilgili sorun düzeltildi.
  • ScalingLazyColumn öğesini, artık üst öğesindeki tüm alanı doldurmayacak şekilde değiştirdik. Bunun yerine, boyutunu içeriğinin boyutundan alır. Bu, LazyColumn davranışıyla tutarlıdır. Eski davranışı geri yüklemek istiyorsanız Modifier.fillMaxSize() değerini ScalingLazyColumn öğesine iletin. NOT: Bu değişiklik tamamlanmamıştır ve bir sonraki alfa sürümündeki takip değişikliğiyle ele alınacaktır. (I3cbfa)

Sürüm 1.0.0-alpha15

26 Ocak 2022

androidx.wear.compose:compose-foundation:1.0.0-alpha15, androidx.wear.compose:compose-material:1.0.0-alpha15 ve androidx.wear.compose:compose-navigation:1.0.0-alpha15 yayınlandı. Version 1.0.0-alpha15 contains these commits.

API Değişiklikleri

  • ScalingLazyColumn öğesine yeni bir özellik autoCentering ekledik. Bu özellik doğru (varsayılan) olduğunda, ilk ve son öğe de dahil olmak üzere tüm öğelerin, listenin görüntü alanı merkezinde görünecek şekilde kaydırılmasını sağlar. Otomatik ortalama özelliğini kullanıyorsanız dikey içerik dolgusunu 0.dp olarak ayarlamanız gerektiğini unutmayın. Hem autoCentering hem de dikey içerik dolgusu sağlanırsa her ikisi de ilk liste öğesinden önce ve son liste öğesinden sonra ek alan oluşturarak öğelerin daha da kaydırılmasına olanak tanır. (I2a282, b/214922490)
  • Herhangi bir composable'ın diğer içeriklerin üzerinde yer alan tam ekran iletişim kutusunu tetiklemesini sağlayan bir Dialog bileşeni ekledik. Gösterildiğinde, iletişim kutusu kaydırarak kapatma özelliğini destekler ve kaydırma hareketi sırasında üst öğesinin içeriğini arka planda gösterir. İletişim kutusu içeriğinin Alert veya Confirmation olması beklenir (önceki bileşenler AlertDialog ve ConfirmationDialog'den yeniden adlandırılmıştır). Alert, Confirmation ve Dialog, androidx.wear.compose.material.dialog paketindedir. Uyarı ve Onay, gezinme hedefi olarak kullanılabilir. Ayrıca, gerektiğinde Uyarı ve Onay parametrelerine ColumnScope eklendi. (Ia9014)
  • WearOS Material Tema Renkleri için Oluşturma'dan onSurfaceVariant2 kaldırıldı ve kitaplıktaki kullanımları onSurfaceVariant ile değiştirildi. (Icd592)
  • PickerState üzerinde bir seçeneği programatik olarak belirleme yöntemi eklendi. Başlangıçta seçilen seçenek artık PickerState oluşturulurken de belirtilebilir. (I92bdf)
  • ScalingLazyColumn öğesinin kaydırma davranışını özelleştirme desteği eklendi. (I1ad2e, b/208842968)
  • NavController.currentBackStackEntryAsState(), Wear.Compose.Navigation kitaplığına eklendi. (If9028, b/212739653)
  • Döner yan düğmeli Wear cihazlar için Modifier.onRotaryScrollEvent() ve Modifier.onPreRotaryScrollEvent() eklendi.(I18bf5, b/210748686)

Sürüm 1.0.0-alpha14

12 Ocak 2022

androidx.wear.compose:compose-foundation:1.0.0-alpha14, androidx.wear.compose:compose-material:1.0.0-alpha14 ve androidx.wear.compose:compose-navigation:1.0.0-alpha14 yayınlandı. 1.0.0-alpha14 sürümü şu commit'leri içerir.

Yeni Özellikler

  • Geliştiricilerin belirli liste öğelerine kaydırma işlemini kontrol etmesine, ilk liste öğesini ve ofseti ayarlamasına olanak tanımak için ScalingLazyListState öğesine çeşitli yöntemler ekledik.

    Bu değişikliğin bir parçası olarak, ScalingLazyList'in görüntü alanının başlangıcı yerine görüntü alanının merkezine göre yönlendirilmesi için ScalingLazyList'i de değiştirdik.

    Merkezin (ScalingLazyListAnchorType.ItemCenter) veya Edge'ün (ScalingLazyListAnchorType.ItemStart) görünüm alanının merkez çizgisine hizalanıp hizalanmayacağını kontrol etmek için ScalingLazyList'e yeni bir özellik (anchorType: ScalingLazyListAnchorType = ScalingLazyListAnchorType.ItemCenter) eklendi.

    Sonuç olarak ScalingLazyListItemInfo.offset ve ScalingLazyListItemInfo.adjustedOffset değişti ve artık öğenin hem liste öğesinin konumuna hem de listenin anchorType değerine göre olan uzaklığını yansıtacak. Örneğin, ScalingLazyColumn için anchorType ItemCenter ve liste öğesi, merkez noktası görüntü alanının merkez çizgisine gelecek şekilde konumlandırılmışsa uzaklık 0 olur.

    Yeni yöntemler scrollTo, animatedScrollTo, centerItemIndex ve centerItemOffset'dir. (I61b61)

  • SwipeDismissableNavHost'ya geri düğmesi işleyicisi ekledik. Böylece geri düğmesine basıldığında gezinme hiyerarşisinde bir önceki düzeye gidilir. (I5b086, b/210205624)

Sürüm 1.0.0-alpha13

15 Aralık 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha13, androidx.wear.compose:compose-material:1.0.0-alpha13 ve androidx.wear.compose:compose-navigation:1.0.0-alpha13 yayınlandı. 1.0.0-alpha13 sürümü şu commit'leri içerir.

API Değişiklikleri

  • RangeIcons, dahili olarak (InlineSlider ve Stepper tarafından dahili olarak referans verilerek) kullanıma sunuldu. (I927ec)

Hata Düzeltmeleri

  • SwipeDismissableNavHost'nın, CREATED yaşam döngüsü durumuna ulaşmadan önce Oluşturma hiyerarşisine hedef eklemesine ve IllegalStateException ile sonuçlanmasına neden olan sorun düzeltildi. Bu düzeltme, navigation-compose bağımlılığının 2.4.0-beta02 ve sonraki sürümlere güncellenmesi için ön koşuldu. (I40a2b, b/207328687)

  • Wear Compose kitaplığında çizilebilir kaynakları almak için Drawables enum sınıfı eklendi. Böylece artık yansıtma gerekmiyor. Bu düzeltme, minifyEnabled=true veya shrinkResources=true) sırasında kitaplık çizilebilir öğelerinin kaldırılmasına neden olan hatayı düzeltir. (Ib2a98)

  • Wear Compose'da Stepper için testler eklendi (I2d03a)

  • Wear Compose Navigation'da SwipeDismissableNavHost için örnekler eklendi. (I85f06)

Sürüm 1.0.0-alpha12

1 Aralık 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha12, androidx.wear.compose:compose-material:1.0.0-alpha12 ve androidx.wear.compose:compose-navigation:1.0.0-alpha12 yayınlandı. 1.0.0-alpha12 sürümü şu commit'leri içerir.

Yeni Özellikler

  • Kullanıcıların bir değer aralığından seçim yapmasına olanak tanıyan bir Adım Sayacı bileşeni ekledik. Adım sayacı, üst ve alt kısımlarında artırma ve azaltma düğmeleri, ortasında ise bir yuva (Çip veya Metin alması beklenir) bulunan tam ekran bir kontrolüdür. Gerekirse düğme simgeleri özelleştirilebilir. (I625fe)

  • İletişim kutularını göstermek için 2 yeni composable ekledik: AlertDialog, kullanıcıdan yanıt bekler ve başlık, simge, mesaj ve a) basit olumlu/olumsuz seçimler için iki düğme veya b) daha esnek seçimler için dikey olarak yerleştirilmiş çipleri ya da açma/kapatma çipleri gösterir. ConfirmationDialog, zaman aşımıyla birlikte bir onay gösterir. Bu basit iletişim kutusunda başlık ve (animasyonlu) simge için yuvalar bulunur. (Ic2cf8)

API Değişiklikleri

  • Önerilen iletişim kutusu süresi değerlerine birim (milisaniye) ekleyin. (I09b48)

Sürüm 1.0.0-alpha11

17 Kasım 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha11, androidx.wear.compose:compose-material:1.0.0-alpha11 ve androidx.wear.compose:compose-navigation:1.0.0-alpha11 yayınlandı. 1.0.0-alpha11 sürümü şu commit'leri içerir.

Yeni Özellikler

  • Kullanıcının kaydırılan listeden öğe seçmesine olanak tanıyan bir seçici bileşeni ekledik. Varsayılan olarak, seçilebilir öğelerin listesi her iki yönde de "sonsuza kadar" tekrarlanır. Bu sayede, yandan bakıldığında dönen bir silindir izlenimi verilir. Sonraki sürümlerde iki özellik daha eklenecek: kaydırma/fırlatma işleminden sonra bir değere tutturma ve PickerState'e geçerli değeri ayarlamak/kaydırmak için bir işlev ekleme. (I6461b)

API Değişiklikleri

  • Liste öğelerinin üst kapsayıcının boyutuna göre boyutlandırılmasına olanak tanımak için ScalingLazyItemScope ve fillParentMaxSize/fillParentMaxWidth/fillParentMaxHeight gibi bazı yeni değiştiriciler eklendi. Öğeler, üst öğenin boyutunun tamamını veya bir kısmını dolduracak şekilde ayarlanabilir. Bu, LazyRow/Column'da (I4612f) zaten mevcut olan işlevleri kullanıma sunar.
  • Öğelerin anahtarı olmasına izin vermek için ScalingLazyColumn'a destek eklendi. Ayrıca, dizilerden ve listelerden öğe eklemeye olanak tanıyan kolaylık yöntemleri de eklendi. (Ic1f89)

Hata Düzeltmeleri

  • TimeText (I8cb64) için ek örnekler

Sürüm 1.0.0-alpha10

3 Kasım 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha10, androidx.wear.compose:compose-material:1.0.0-alpha10 ve androidx.wear.compose:compose-navigation:1.0.0-alpha10 yayınlandı. Version 1.0.0-alpha10 contains these commits.

Yeni Özellikler

  • Wear Compose için InlineSlider eklendi. InlineSlider, kullanıcıların bir değer aralığından seçim yapmasına olanak tanır. Seçim aralığı, aralığın minimum ve maksimum değerleri arasında bir çubuk olarak gösterilir. Kullanıcılar bu çubuktan tek bir değer seçebilir. (If0148)

  • Yeni Wear OS Codelab'i için Compose'a göz atın.

API Değişiklikleri

  • Macrobenchmark artık minSdkVersion 23'ye sahip. (If2655)

Hata Düzeltmeleri

  • Bir SideEffect'te SwipeDismissableNavHost'taki geçiş işleme güncellendi (I04994, b/202863359)
  • SwipeDismissableNavHost'ta geçiş işleme özelliğini güncelleme (I1cbe0, b/202863359)

Sürüm 1.0.0-alpha09

27 Ekim 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha09, androidx.wear.compose:compose-material:1.0.0-alpha09 ve androidx.wear.compose:compose-navigation:1.0.0-alpha09 yayınlandı. Version 1.0.0-alpha09 contains these commits.

Yeni Özellikler

  • Wear OS'te Compose'un geliştirici önizlemesini kullanıma sunduk. Ana composable'ları inceleyen ve bunları kullanmaya başlamak için daha fazla kaynağa bağlantı veren blog yayınımıza göz atın.

API Değişiklikleri

  • Geliştiricilerin Wear Material Design Color temasındaki tüm renkleri özelleştirebilmesi için destek ekledik. (I4759b, b/199754668)

Hata Düzeltmeleri

  • Durumu koruyan SwipeToDismissBox örnekleri eklendi (Ibaffe)
  • CurvedText, TimeText ve SwipeToDismissBox için KDocs'tan developer.android.com kılavuzlarına bağlantılar eklendi. (I399d4)
  • SwipeDismissableNavHost artık geçerli bir hedef yoksa hata veriyor (NavGraph'ın wear.compose.navigation.composable yardımcı işleviyle oluşturulmadığını gösterir) (I91403)
  • TimeText'te zaman kaynağı kullanımıyla ilgili ek dokümanlar ve örnekler eklendi (I4f6f0).

Sürüm 1.0.0-alpha08

13 Ekim 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha08, androidx.wear.compose:compose-material:1.0.0-alpha08 ve androidx.wear.compose:compose-navigation:1.0.0-alpha08 yayınlandı. Version 1.0.0-alpha08 contains these commits.

API Değişiklikleri

  • AppCard ve TitleCard body özelliklerini content olarak yeniden adlandırdık ve sondaki lambda olarak sağlanabilmeleri için özellik listesinin sonuna taşıdık. Yeni slot adlarıyla tutarlılık sağlamak için bodyColor, contentColor olarak da yeniden adlandırıldı. (I57e78)

Hata Düzeltmeleri

  • Düğme, kart, çip, tema, konum göstergesi ve ölçeklendirme tembel sütun bileşenleri için KDocs'tan developer.android.com kılavuzlarına bağlantılar eklendi. (I22428)
  • WearOS'te SwipeToDismissBox'ın bazen kaydırmaları işlememesine neden olan sorun düzeltildi. (I9387e)
  • Button, CompactButton, Chip, CompactChip, AppCard, TitleCard, ToggleButton, ToggleChip, SplitToggleChip için örnekler eklendi (Iddc15)
  • Card, Chip, ToggleChip, TimeText ve ScalingLazyColumn için mikro karşılaştırma performans testleri eklendi. (If2fe9)

Sürüm 1.0.0-alpha07

29 Eylül 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha07, androidx.wear.compose:compose-material:1.0.0-alpha07 ve androidx.wear.compose:compose-navigation:1.0.0-alpha07 yayınlandı. 1.0.0-alpha07 sürümü şu commit'leri içerir.

Yeni Özellikler

  • Materyalde CurvedText bileşeni eklendi. Bu bileşen, geliştiricilerin bir dairenin eğriliğini (genellikle dairesel bir ekranın kenarında) takip ederek kolayca kavisli metin yazmasına olanak tanır. (I19593)

API Değişiklikleri

  • TimeText (Idfead) için testler eklendi
  • ArcPaddingValues'u arayüze dönüştürün. (Iecd4c)
  • SwipeToDismissBox'a animasyon eklendi (I9ad1b)
  • SwipeToDismissBox API'ye hasBackground parametresi eklendi. Böylece, gösterilecek arka plan içeriği olmadığında kaydırma hareketi devre dışı bırakılabilecek. (I313d8)
  • rememberNavController() artık isteğe bağlı Navigator örnekleri alıyor. Bu örnekler, Refakatçi Gezinme Materyali gibi isteğe bağlı gezinme araçlarını daha iyi desteklemek için döndürülen NavController öğesine eklenecek. (I4619e)
  • navigation-common'dan NamedNavArgument'ı referans alın ve wear.compose.navigation'dan kopyayı kaldırın. (I43af6)

Hata Düzeltmeleri

  • Küçük cihazlarda CurvedRow testinin güvenilmezliği düzeltildi. (If7941)
  • İçerik güncellendiğinde CurvedRow'da olası titreme düzeltildi ve kavisli satırın yeniden ölçülmesi sağlandı (Ie4e06).
  • ChipDefaults.gradientBackgroundChipColors(), kullanıcı deneyimi spesifikasyonundaki değişikliklere uygun şekilde güncellendi. Renk geçişi artık% 32,5 alfa ile MaterialTheme.colors.primary ile başlıyor ve% 75 alfa ile MaterialTheme.colors.surface arka planında% 0 alfa ile MaterialTheme.colors.surface ile bitiyor. (Id1548)
  • Seçili durumdaki ToggleChip'lerin renkleri, en son Wear Material Design UX Spec yönergelerine uygun şekilde güncellendi. Seçildiğinde ToggleChip'lerin arka planı artık MaterialTheme.color.surface @ 0% alfa, sol üstten MaterialTheme.color.primary @ 32% alfa, sağ alta doğru MaterialTheme.color.surface @ 75% alfa arka planı üzerinde renk geçişli oluyor. Bu, ToggleChip için işaretli ve işaretsiz arasında daha ince bir fark oluşturur. (Idd40b)

Sürüm 1.0.0-alpha06

15 Eylül 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha06, androidx.wear.compose:compose-material:1.0.0-alpha06 ve androidx.wear.compose:compose-navigation:1.0.0-alpha06 yayınlandı. 1.0.0-alpha06 sürümü şu commit'leri içerir.

Yeni Özellikler

  • PositionIndicators (kaydırma veya ses gibi) konumunu işlemek için bir yapı sağlayan, ekranın üst kısmında saati ve uygulama durumunu görüntülemek için bir alan sunan ve kaydırılabilir içerik için ekranın üst ve alt kenarlarını bulanıklaştırmak üzere Vignette'i destekleyen üst düzey bir uygulama composable'ı olan Scaffold'u ekledik. İskele'nin ana alanı, uygulama içeriklerinin yerleştirildiği yerdir. (I5e0bf)
  • Wear Compose için TimeText uygulaması eklendi (I5654c)

Wear Compose Navigation Library

  • Wear Compose ve Androidx Navigation kitaplıkları arasında entegrasyon sağlayan Wear Compose Navigation kitaplığının ilk sürümünü ekledik. Uygulamanızdaki hedefler olarak @Composable işlevleri arasında gezinmek için basit bir yöntem sunar.

  • Bu ilk sürümde şunlar sunulmaktadır:

    • Bir gezinme grafiğine ev sahipliği yapan ve kaydırma hareketleriyle geriye doğru gezinme sağlayan SwipeDismissableNavHost composable'ı
    • NavGraphBuilder.composable uzantısı, gezinme grafikleri oluşturmaya yardımcı olur.
    • rememberSwipeDismissableNavController(), state hoisting'e izin vermek için
  • İki ekran oluşturup aralarında gezinme örneği:

    val navController = rememberSwipeDismissableNavController()
    SwipeDismissableNavHost(
        navController = navController,
        startDestination = "start"
    ) {
        composable("start") {
            Column(
                horizontalAlignment = Alignment.CenterHorizontally,
                verticalArrangement = Arrangement.Center,
                modifier = Modifier.fillMaxSize(),
            ) {
                Button(onClick = { navController.navigate("next") }) {
                    Text("Go")
                }
            }
        }
        composable("next") {
            Column(
                horizontalAlignment = Alignment.CenterHorizontally,
                verticalArrangement = Arrangement.Center,
                modifier = Modifier.fillMaxSize(),
            ) {
                Text("Swipe to go back")
            }
        }
    }
    
  • Wear Compose Navigation, ayrı bir kitaplık olarak paketlenir. Böylece, kendi özel gezinme işlevini uygulayan basit Wear Compose uygulamalarının Androidx Navigation kitaplığına bağımlı olması gerekmez.

API Değişiklikleri

  • Arka plan ve içerik için anahtar kimliği ayarlanarak SwipeDismissableNavHost, rememberSaveable'ı destekleyecek şekilde güncellendi (I746fd).
  • LazyListState'i işleyebilen bir PositionIndicator adaptörü ekledik (I21b88).
  • SwipeToDismissBox, rememberSaveable'ı destekleyecek şekilde güncellendi (Ie728b)
  • ScalingLazyColumn'a reverseLayout desteği eklendi. Bu, kaydırma ve düzen yönünün tersine çevrilmesine olanak tanır (I9e2fc).
  • performGesture ve GestureScope kullanımdan kaldırıldı. Yerine performTouchInput ve TouchInjectionScope getirildi. (Ia5f3f, b/190493367)
  • VignetteValue'nun adını VignettePosition olarak, VignetteValue.Both'un adını ise VignettePosition.TopAndBottom olarak değiştirdik. (I57ad7)
  • Gelecekte ScalingLazyRow uygulaması eklemeye karar verirsek ScalingLazyColumnState'in adını ScalingLazyListState, ScalingLazyColumnItemInfo'nun adını ScalingLazyListItemInfo, ScalingLazyColumnLayoutInfo'nun adını ScalingLazyListLayoutInfo ve ScalingLazyColumnScope'un adını ScalingLazyListScope olarak değiştirdik. (I22734)

Hata Düzeltmeleri

  • CompactChip dokümanı, simge veya etiket sağlanmazsa ne olacağını açıklayacak şekilde güncellendi. (I4ba88)
  • Wear kart bileşenlerinde bazı düzenlemeler yaptık. (I6b3d0)
    1. Başlık ve gövde arasındaki TitleCard aralığı 8 dp'den 2 dp'ye düşürüldü.
    2. TitleCard üstbilgi yazı tipi, gövde yazı tipinden title3 yazı tipine değiştirildi.
    3. Arka planın daha koyu görünmesi için kart arka plan gradyanı değiştirildi.

Sürüm 1.0.0-alpha05

1 Eylül 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha05 ve androidx.wear.compose:compose-material:1.0.0-alpha05 yayınlandı. 1.0.0-alpha05 sürümü şu commit'leri içerir.

API Değişiklikleri

  • ArcPaddingValues'u @Stable olarak işaretleyin (I57deb)
  • ScalingLazyColumnState artık ScrollableState arayüzünü uyguluyor. Böylece geliştiriciler, bileşeni programatik olarak kaydırma erişimine sahip oluyor. (I47dbc)

Hata Düzeltmeleri

  • Kullanıcı deneyimi spesifikasyonundaki güncellemelerle uyumlu hale getirmek için Chip ve ToggleChip'teki simge ile metin arasındaki boşluğu azalttık. (I83802)

Sürüm 1.0.0-alpha04

18 Ağustos 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha04 ve androidx.wear.compose:compose-material:1.0.0-alpha04 yayınlandı. 1.0.0-alpha04 sürümü şu commit'leri içerir.

Yeni Özellikler

  • Sola kaydırarak kapatma hareketini desteklemek için kullanılabilecek bir SwipeToDismissBox ve kaydırılabilir değiştirici eklendi. Gezinme bileşenlerinden bağımsız olsa da bu, bir ekrandan çıkıp başka bir ekrana gitmek için kullanılır. Kaydırarak kapatma özelliğini tanıtmak için entegrasyon testleri eklendi. (I7bbaa)
  • Geliştiricilerin ölçeklendirme uygulandıktan sonra ScalingLazyColumn'daki öğelerin gerçek konumlarını ve boyutlarını bilmesini sağlamak için ScalingLazyColumnState sınıfına ScalingLazyColumnItemInfo ve ScalingLazyColumnLayoutInfo arayüzlerini ekledik. Ayrıca, ScalingLazyColumn'a "üst" içerik dolgusu uygulandığında ölçeklendirmenin hesaplanma şekliyle ilgili bir hata da düzeltildi. (I27c07)

API Değişiklikleri

  • Kavisli metin stilini belirtmek için CurvedTextStyle sınıfını ekleyin. Seçenekler. TextStyle'a benzer ancak artık yalnızca color, fontSize ve background özelliklerini destekliyor. Gelecekte daha fazla stil seçeneği eklenecektir. (I96ac3)
  • Geliştiricilerin ölçeklendirme uygulandıktan sonra ScalingLazyColumn'daki öğelerin gerçek konumlarını ve boyutlarını bilmesini sağlamak için ScalingLazyColumnState sınıfına ScalingLazyColumnItemInfo ve ScalingLazyColumnLayoutInfo arayüzlerini ekledik. Ayrıca, ScalingLazyColumn'a "üst" içerik dolgusu uygulandığında ölçeklendirmenin hesaplanma şekliyle ilgili bir hata da düzeltildi. (I27c07)
  • SwipeToDismissBox API'sinin bir parçası olan SwipeDismissTarget enum'una @ExperimentalWearMaterialApi eklendi. (I48b5e)

Hata Düzeltmeleri

  • SwipeToDismissBox için test materyali eklendi (I9febc)

Sürüm 1.0.0-alpha03

4 Ağustos 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha03 ve androidx.wear.compose:compose-material:1.0.0-alpha03 yayınlandı. 1.0.0-alpha03 sürümü şu commit'leri içerir.

API Değişiklikleri

  • Geliştiricilerin, bir dairenin eğriliğini (genellikle dairesel bir ekranın kenarında) takip ederek kolayca metin yazmasına olanak tanıyan CurvedText bileşeni eklendi (Id1267).
  • Arka plan resminin üzerine bir katman çizileceğini netleştirmek için CardDefaults.imageBackgroundPainter() seçeneğinin adını CardDefaults.imageWithScrimBackgroundPainter() olarak değiştirdik. (I53206)
  • Wear Material için liste bileşeni sağlayan ScalingLazyColumn bileşeni eklendi. Bu bileşen, liste içerikleri boyut olarak küçülüp bileşenin kenarına doğru ölçeklenirken şeffaflaşarak balık gözü görünümü sunar. (I7070c)

Hata Düzeltmeleri

  • Kullanıcı deneyimi spesifikasyonu güncellemesine yanıt olarak AppCard'daki appName içeriğinin varsayılan rengini değiştirdik. appName için varsayılan renk artık MaterialTheme.colors.onSurfaceVariant. Ayrıca, başlık yuvası için eksik bir parametre dokümanı açıklaması eklendi. (Ic4ad1)

Sürüm 1.0.0-alpha02

21 Temmuz 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha02 ve androidx.wear.compose:compose-material:1.0.0-alpha02 yayınlandı. 1.0.0-alpha02 sürümü şu commit'leri içerir.

Yeni Özellikler

  • Yay şeklinde düzenlenebilen composable'lar için yeni bir CurvedRow sınıfı eklendi (I29941).
  • Uygulamalarda kullanılmak üzere yeni bir kart türü (TitleCard) eklendi. Ayrıca, içeriklerini vurgulamak için kartların arka planına resim ekleme desteği de eklendi (I53b0f).

API Değişiklikleri

  • CurvedRow'a radyal hizalama desteği ekleyin (bir satırdaki dikey hizalamaya benzer) (Id9de5)
  • Yayılan composable'lara yeni bir CurvedRow sınıfı ekleme (I29941)
  • Uygulamalarda kullanılmak üzere yeni bir kart türü (TitleCard) eklendi. Ayrıca, içeriklerini vurgulamak için kartların arka planına resim ekleme desteği de eklendi (I53b0f).
  • Geliştiricilerin ToggleChip ve SplitToggleChips'i yapılandırmasını kolaylaştırmak için ToggleChipDefaults'e açma/kapatma simgeleri (onay kutusu, anahtar ve radyo düğmeleri) eklendi (I7b639).
  • Çiplerin başlangıç ve bitiş içerik dolgusu, Çip'te simge olup olmadığına bakılmaksızın tutarlı bir şekilde 14 dp olacak şekilde güncellendi (daha önce simge varsa 12 dp, yoksa 14 dp idi) (I34c86)

Hata Düzeltmeleri

  • CurvedRow (I93cdb) için testler ekleyin.
  • Wear Compose bağımlılıklarını Compose 1.0.0-rc01'e bağlama. (Ie6bc9)
  • Kartlar ve çiplerde arka plan resmi çizme işlemi, resim oranlarını korumak için resmi uzatmak yerine kırpacak şekilde değiştirildi. (I29b41)
  • Button ve ToggleButton için daha fazla demo ve entegrasyon testi eklendi. (5e27ed2)
  • imageBackgroundChips'in içerik renklerini kapsayacak şekilde daha fazla çip testi eklendi (Ia9183).

Sürüm 1.0.0-alpha01

1 Temmuz 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha01 ve androidx.wear.compose:compose-material:1.0.0-alpha01 yayınlandı. 1.0.0-alpha01 sürümü şu commit'leri içerir.

Yeni Özellikler

Wear Compose, WearOS giyilebilir cihazlar için Materyal Tasarım'ın bir uzantısı olan Wear Materyal Tasarım'ı destekleyen, Compose tabanlı bir Kotlin kitaplığıdır. Bu ilk alfa sürümünde aşağıdakilerin erken ve işlevsel uygulamaları yer almaktadır:

  • Material teması: Bu kitaplıktan kullanılan bileşenlerde renkleri, tipografiyi ve şekilleri tutarlı bir şekilde yapılandırır.
  • Chip, CompactChip: Chip'ler stadyum şeklindedir ve simge, etiket ve ikincil etiket içeriğini almak için varyasyonlar mevcuttur.
  • - ToggleChip, SplitToggleChip: Radyo düğmesi veya onay kutusu gibi iki durumlu bir açma/kapatma simgesi için yuva içeren özel bir çip türü. Ayrıca SplitToggleChip'in iki dokunulabilir alanı vardır: biri tıklanabilir, diğeri ise açılıp kapatılabilir.
  • Button, CompactButton: Düğmeler, simge veya kısa metin (en fazla 3 karakter) için tek bir içerik yuvası bulunan dairesel şekildedir.
  • ToggleButton: Bir işlemi açıp kapatan, simge veya kısa metin (en fazla 3 karakter) için tek bir yuvası olan düğme.
  • Kart, AppCard: Köşeleri yuvarlatılmış dikdörtgen şeklindedir. Uygulama simgesi, saat, başlık ve gövde gibi içerikler için alanlar sunar.

Gelecekteki sürümlerde Wear Material Design seçicileri, kaydırma çubukları, listeler, sayfa göstergeleri, iletişim kutuları, kaydırma çubuğu göstergeleri, kısa mesajlar ve daha fazlası için destek eklenerek widget seti genişletilecektir.

Ayrıca, geliştiricilerin Wearable uygulamaları/katmanları oluşturmasını kolaylaştırmak için iskelelerin yanı sıra kavisli düzenler ve metin gibi Wearable'a özgü diğer özellikler de desteklenecektir.

Wear Compose Material, giyilebilir cihazlara yönelik olsa da Compose Material ile aynı ilkelerle tasarlanmıştır. Wear Compose Material kitaplığı, Wearable cihazlar için geliştirme yaparken Compose Material kitaplığı yerine kullanılmalıdır.

İki "Material" kitaplığı birbirini dışlayıcı olarak kabul edilmeli ve aynı uygulamada karıştırılmamalıdır. Geliştiriciler, Compose Material kitaplığını bağımlılıklarına dahil ettiklerini fark ederlerse bu, a) Wear Compose Material kitaplığında eksik bileşenler olduğunu (lütfen neye ihtiyacınız olduğunu bize bildirin) veya b) giyilebilir cihazda kullanılmasını önermediğimiz bir bileşen kullandıklarını gösterir.