Animasyon Oluştur
androidx.compose.animation
androidx.compose.animation.core
androidx.compose.animation.graphics
(Tüm oluşturma paketleri için API referans belgelerine bakın)
Son Güncelleme | Kararlı Sürüm | Serbest Bırakma Adayı | Beta Sürümü | Alfa Sürümü |
---|---|---|---|---|
17 Nisan 2024 | 1.6.6 | - | - | 1.7.0-alpha07 |
Yapı
Oluştur, androidx
içindeki 7 Maven grup kimliğinin birleşimidir. Her grupta, her biri kendi sürüm notlarına sahip olan hedeflenmiş bir işlev alt kümesi bulunur.
Bu tabloda, gruplar ve her sürüm notları grubunun bağlantıları açıklanmaktadır.
Gruplandır | Açıklama |
---|---|
compose.animation | Kullanıcı deneyimini zenginleştirmek için Jetpack Compose uygulamalarında animasyonlar oluşturun. |
compose.derleyici | @Composable işlevlerini dönüştürün ve Kotlin derleyici eklentisiyle optimizasyonları etkinleştirin. |
compose.temel | Kullanıma hazır yapı taşlarıyla Jetpack Compose uygulamaları yazın ve kendi tasarım sistemi parçalarınızı oluşturmak için temeli genişletin. |
compose.material | Kullanıma hazır Materyal Tasarım Bileşenleriyle Jetpack Compose kullanıcı arayüzleri derleyin. Bu, Compose'un daha üst düzey giriş noktasıdır ve www.material.io adresinde açıklananlarla eşleşen bileşenleri sağlamak için tasarlanmıştır. |
compose.material3 | Materyal Tasarımın yeni evrimi olan Materyal Tasarım 3 Bileşenler ile Jetpack Compose kullanıcı arayüzleri derleyin. Material 3, güncellenmiş tema ve bileşenlerin yanı sıra dinamik renk gibi Material You kişiselleştirme özellikleri içerir ve yeni Android 12 görsel stili ve sistem kullanıcı arayüzüyle uyumlu olacak şekilde tasarlanmıştır. |
compose.runtime | Compose'un programlama modeli ve durum yönetiminin temel yapı taşları ve Compose Compiler Eklentisi'nin hedeflemesi için temel çalışma zamanı. |
compose.ui | Düzen, çizim ve giriş de dahil olmak üzere cihazla etkileşimde bulunmak için gereken kullanıcı arayüzünün temel bileşenleri. |
Bağımlılıkları bildirme
Compose'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ın veya modülünüz için build.gradle
dosyasına ihtiyaç duyduğunuz yapıların bağımlılıklarını ekleyin:
Modern
dependencies { implementation "androidx.compose.animation:animation:1.6.6" } android { buildFeatures { compose true } composeOptions { kotlinCompilerExtensionVersion = "1.5.12" } kotlinOptions { jvmTarget = "1.8" } }
Kotlin
dependencies { implementation("androidx.compose.animation:animation:1.6.6") } android { buildFeatures { compose = true } composeOptions { kotlinCompilerExtensionVersion = "1.5.12" } kotlinOptions { jvmTarget = "1.8" } }
Bağımlılıklar hakkında daha fazla bilgi edinmek için Derleme bağımlılıkları ekleme konusuna bakın.
Geri bildirim
Geri bildiriminiz Jetpack'i daha iyi hale getirmemize yardımcı oluyor. Yeni sorunlar keşfederseniz veya bu kitaplığı nasıl geliştirebileceğimizle ilgili fikirleriniz varsa bize bildirin. Yeni bir sorun oluşturmadan önce lütfen bu kitaplıktaki mevcut sorunlara göz atın. Yıldız düğmesini tıklayarak mevcut bir soruna oyunuzu ekleyebilirsiniz.
Daha fazla bilgi için Sorun İzleyici belgelerine bakın.
Sürüm 1.7
Sürüm 1.7.0-alpha07
17 Nisan 2024
androidx.compose.animation:animation-*:1.7.0-alpha07
yayınlandı. 1.7.0-alpha07 sürümü bu kayıtları içerir.
Yeni Özellikler
- Yeni paylaşılan öğe geçiş API'leri, kullanımınızı ve geri bildirimlerinizi bekliyor. Bu yeni deneysel API'ler, sağlanan değiştiricileri kullanarak düzenleri düzen ağacında paylaşılan şekilde etiketlemeye olanak tanır. Böylece, bir paylaşılan içerik grubu çıkıp diğer grup girdiğinde sorunsuz şekilde değişen sınırlar oluşturur. (Icb0b9)
sharedBounds
dilindeki içeriği ölçeklendirmek için yeniscaleInSharedContentToBounds
vescaleOutSharedContentToBounds
(I731c1)
API Değişiklikleri
AnimatedVisibilityScope.transition
artık kararlı bir API.Modifier.animateEnterExit(..)
de kararlı hale getirildi. (I6c1d1)ApproachLayoutModifierNode
veModifier.approachLayout
kararlı durumda. Sırasıyla eskiisMeasurementApproachComplete()
veisPlacementApproachComplete()
yerine yeniisMeasurementApproachInProgress()
veisPlacementApproachInProgress()
kullanılacak.- Kullanımdan kaldırılan
intermediateLayout
değiştiricisi kaldırıldı. (I3e91c) - Şimdi
keyframesWithSpline
öğesine birperiodicBias
değeri (Kayan) iletebilirsiniz. Böylece eğrinin başlangıç ve son hızı eşit olur. Eğriler kullanılan tekrarlanabilir animasyonlar için kullanışlıdır. Yanlılık, her bir hızın (başlangıç ve son) periyodikliğe ulaşmak için ne kadar değiştirildiğini gösterir. (Ic1e6c, b/292114811)
Hata Düzeltmeleri
- Önceden 0..1 (I38747) değerine sabitlenmiş olan aşırı ve eksik yumuşatma eğrileri düzeltildi.
Sürüm 1.7.0-alpha06
3 Nisan 2024
androidx.compose.animation:animation-*:1.7.0-alpha06
yayınlandı. 1.7.0-alpha06 sürümü bu kayıtları içerir.
Yeni Özellikler
LazyColumn
veLazyRow
öğelerine öğe görünümü ve kaybolma animasyonu desteği eklendi. Önceden, animasyonları yerleştirme (yeniden sıralama) özelliğini desteklemek içinModifier.animateItemPlacement()
değiştirici eklemek mümkündü. Bu değiştiriciyi kullanımdan kaldırdık veModifier.animateItem()
adında, üç animasyon türünü de desteklemenize olanak tanıyan ve deneysel olmayan yeni bir değiştiriciyi kullanıma sunduk: görünüm (kararak çıkma), kaybolma (sönme) ve yeniden sıralama. (I2d7f7, b/330152398, b/150812265)
Hata Düzeltmeleri
updateTransition
API'sinin performansı iyileştirildi.
Sürüm 1.7.0-alpha05
20 Mart 2024
androidx.compose.animation:animation-*:1.7.0-alpha05
yayınlandı. 1.7.0-alpha05 sürümü bu kayıtları içerir.
API Değişiklikleri
SeekableTransitionState
,snapTo()
değeriniseekTo()
ile değiştirir ve durumu herhangi bir animasyon olmadan hedef durumuna anında değiştiren birsnapTo()
ekler.
Sürüm 1.7.0-alpha04
6 Mart 2024
androidx.compose.animation:animation-*:1.7.0-alpha04
yayınlandı. 1.7.0-alpha04 sürümü bu kayıtları içerir.
API Değişiklikleri
- Bir yolun yönünü tersine çevirmek için yeni API
Path.reverse()
(I36348)
Sürüm 1.7.0-alpha03
21 Şubat 2024
androidx.compose.animation:animation-*:1.7.0-alpha03
yayınlandı. Sürüm 1.7.0-alpha03 bu kayıtları içerir.
Yeni Özellikler
- Özel içerik hizalaması için ek parametre gerektiren yeni
Modifier.animateContentSize
. (I5623a, b/269803907) - Örnekleme sırasında bilinmeyen boyut, konum veya başka bir hedeften animasyon oluşturmak için yeni Deneysel
DeferredTargetAnimation
. (I60745)
Sürüm 1.7.0-alpha02
7 Şubat 2024
androidx.compose.animation:animation-*:1.7.0-alpha02
yayınlandı. Sürüm 1.7.0-alpha02 bu kayıtları içerir.
Hata Düzeltmeleri
KeyframesSpec
için uyumluluk düzeltmesi. (I2bdf3, b/322214617)LazyList
içinde kullanıldığındaModifier.animateContentSize
öğesinin düzgün şekilde sıfırlanmaması düzeltildi. (I070512, b/322525716)- Aralık dışında zaman damgaları kullanıldığında
KeyframesSpec
üzerindekiIllegalStateException
düzeltildi. (I341b8, b/322839811)
Sürüm 1.7.0-alpha01
24 Ocak 2024
androidx.compose.animation:animation-*:1.7.0-alpha01
yayınlandı. Sürüm 1.7.0-alpha01 bu kayıtları içerir.
Sürüm 1.6
Sürüm 1.6.6
17 Nisan 2024
androidx.compose.animation:animation-*:1.6.6
yayınlandı. Önceki sürümden bu yana değişiklik yok
Sürüm 1.6.5
3 Nisan 2024
androidx.compose.animation:animation-*:1.6.5
yayınlandı. 1.6.5 sürümü bu kayıtları içerir.
Sürüm 1.6.4
20 Mart 2024
androidx.compose.animation:animation-*:1.6.4
yayınlandı. 1.6.4 sürümü bu kayıtları içerir.
Sürüm 1.6.3
6 Mart 2024
androidx.compose.animation:animation-*:1.6.3
yayınlandı. 1.6.3 sürümü bu kayıtları içerir.
Sürüm 1.6.2
21 Şubat 2024
androidx.compose.animation:animation-*:1.6.2
yayınlandı. 1.6.2 sürümü bu kayıtları içerir.
Sürüm 1.6.1
7 Şubat 2024
androidx.compose.animation:animation-*:1.6.1
yayınlandı. 1.6.1 sürümü bu kayıtları içerir.
Hata Düzeltmeleri
KeyframesSpec
için uyumluluk düzeltmesi. (I2bdf3, b/322214617)
Sürüm 1.6.0
24 Ocak 2024
androidx.compose.animation:animation-*:1.6.0
yayınlandı. 1.6.0 sürümü bu kayıtları içerir.
Sürüm 1.6.0-rc01
10 Ocak 2024
androidx.compose.animation:animation-*:1.6.0-rc01
yayınlandı. 1.6.0-rc01 sürümü bu kayıtları içerir.
Sürüm 1.6.0-beta03
13 Aralık 2023
androidx.compose.animation:animation-*:1.6.0-beta03
yayınlandı. 1.6.0-beta03 sürümü bu kayıtları içerir.
API Değişiklikleri
scaleInToFitContainer
vescaleOutToFitContainer
, önceden bakmayı gerektirdiğinden geçici olarakAnimatedContentTransitionScope
rolünden kaldırıldı. Gelecekte, önceden yayın özelliği varsayılan olarak etkin olduğunda veya gelecekteki sürümlerde etkinleştirildiğinde de kullanılabilir.
Sürüm 1.6.0-beta02
29 Kasım 2023
androidx.compose.animation:animation-*:1.6.0-beta02
yayınlandı. 1.6.0-beta02 sürümü bu kayıtları içerir.
Sürüm 1.6.0-beta01
15 Kasım 2023
androidx.compose.animation:animation-*:1.6.0-beta01
yayınlandı. 1.6.0-beta01 sürümü bu kayıtları içerir.
API Değişiklikleri
ExitTransition.Hold
, daha açık olması içinExitTransition.KeepUntilTransitionsFinished
olarak yeniden adlandırıldı. (I1c490)- Artık monotonik eğriler kullanarak N boyutlu değerlerin interpolasyonu yapmak için
keyframesWithSpline
kullanabilirsiniz.Offset
,IntOffset
,DpOffset
gibi konum değerlerinin interpolasyonunu yapmak özellikle yararlıdır. Deneysel API olarak eklendi.
Hata Düzeltmeleri
ArcLine
bölgesinde Gradyan Süpürme özelliği için oluşturucu desteği eklendi. (I4d5bb)PageSize.Fixed
için eşittir ve karma kodunu uygulayın. (Ie3ede, b/300134276)- Pencere Inset değişikliğiyle ikili program uyumluluğu sorununu düzeltin. (Iee695)
- Mikro karşılaştırmalar, bu olmadan daha iyi performans gösterdiğinden Material3 Çip/Düğmesi için malzeme temel katmanını kaldırın. (I55555)
Sürüm 1.6.0-alpha08
18 Ekim 2023
androidx.compose.animation:animation-*:1.6.0-alpha08
yayınlandı. Sürüm 1.6.0-alpha08 bu kayıtları içerir.
API Değişiklikleri
KeyframesSpecConfig#with
desteği sonlandırıldı ve yerineKeyframesSpecConfig#using
kullanılmaya başlandı. Bu durumda derleyici kalıbı korunur. (I1d769)
Sürüm 1.6.0-alpha07
4 Ekim 2023
androidx.compose.animation:animation-*:1.6.0-alpha07
yayınlandı. Sürüm 1.6.0-alpha07 bu kayıtları içerir.
API Değişiklikleri
- Sabit ve Kaydırılabilir Sekme Satırları artık Birincil ve İkincil varyantlara sahip. Bunlar, Material3'te tanımlandığı gibi renk ve gösterge davranışıyla doğru bir şekilde eşleşir.
PrimaryScrollableTabRow
veSecondaryScrollableTabRow
artık kaydırma durumunu gösteriyor. (Iec8f5, b/260572337)
Sürüm 1.6.0-alpha06
20 Eylül 2023
androidx.compose.animation:animation-*:1.6.0-alpha06
yayınlandı. Sürüm 1.6.0-alpha06 bu kayıtları içerir.
Sürüm 1.6.0-alpha05
6 Eylül 2023
androidx.compose.animation:animation-*:1.6.0-alpha05
yayınlandı. Sürüm 1.6.0-alpha05 bu kayıtları içerir.
API Değişiklikleri
- Bir yumuşak geçiş eğrisine rastgele yolun sağlanmasını etkinleştirmek için
PathEasing
eklendi. (Idb4b9)
Sürüm 1.6.0-alpha04
23 Ağustos 2023
androidx.compose.animation:animation-*:1.6.0-alpha04
yayınlandı. Sürüm 1.6.0-alpha04 bu kayıtları içerir.
API Değişiklikleri
- Geliştiricilerin geçiş işleminin ilerlemesini kontrol edebilmesi için
SeekableTransitionState
ekleyin. (I8e69d)
Sürüm 1.6.0-alpha03
9 Ağustos 2023
androidx.compose.animation:animation-*:1.6.0-alpha03
yayınlandı. Sürüm 1.6.0-alpha03 bu kayıtları içerir.
API Değişiklikleri
- İçeriği, giriş ve çıkış animasyonu sırasında animasyon kapsayıcısının boyutuna göre ölçeklendiren yeni giriş/çıkış geçişi türü.
LookaheadScope
Oluşturulabilir eğlence ve arayüz artık kararlı. (Ifb2ce)
Sürüm 1.6.0-alpha02
26 Temmuz 2023
androidx.compose.animation:animation-*:1.6.0-alpha02
yayınlandı. Sürüm 1.6.0-alpha02 bu kayıtları içerir.
API Değişiklikleri
- Hem giriş hem çıkış geçişi tamamlanana kadar
AnimatedContent
içinde giden içeriği görüntülemek için yeniExitTransition.Hold
. (I5984f) - composable'lara izin verilen girişleri belirten ek ek açıklamalar (I51109)
Sürüm 1.6.0-alpha01
21 Haziran 2023
androidx.compose.animation:animation-*:1.6.0-alpha01
yayınlandı. Sürüm 1.6.0-alpha01 bu kayıtları içerir.
Yeni Özellikler
- Ön izleme özelliğinde hedef boyutu raporlayarak
Modifier.animateContentSize
veAnimatedVisibility
özelliklerinin, önceden tahmin sistemine tamamen entegre edilmesini sağlayın.
API Değişiklikleri
- Mevcut ölçüm geçişinin ileriye dönük geçiş olup olmadığını belirtmek için
IntrinsincMeasureScope
içinde ve uygulamalarında (ör.MeasureScope
) yeni özellik. (I7a812)
Hata Düzeltmeleri
- İlkbahar animasyonlarından ayırmalar kaldırıldı. (Ie9431)
- Enum.valueOf değer parametresi adı değiştirildi (Ia9b89)
- enum valueOf parametresinden (I818fe) daha fazla atılmış istisna
Sürüm 1.5
Sürüm 1.5.4
18 Ekim 2023
androidx.compose.animation:animation-*:1.5.4
yayınlandı. 1.5.4 sürümü bu kayıtları içerir.
Sürüm 1.5.3
4 Ekim 2023
androidx.compose.animation:animation-*:1.5.3
yayınlandı. Bu sürümde değişiklik yok
Sürüm 1.5.2
27 Eylül 2023
androidx.compose.animation:animation-*:1.5.2
yayınlandı. 1.5.2 sürümü bu kayıtları içerir.
Sürüm 1.5.1
6 Eylül 2023
androidx.compose.foundation:foundation-*:1.5.1
yayınlandı. Sürüm 1.5.1 bu kayıtları içerir.
Hata Düzeltmeleri
- Klavyeyi gösteren ve
readOnly
doğru olduğunda düzenlenebilir olan metin alanları düzeltildi. Ayrıca, odaktaykenreadOnly
ayarı true (doğru) iken false (yanlış) olarak değiştirildiğinde klavyenin gösterilmemesi de düzeltildi. (I34a19, b/246909589)
Sürüm 1.5.1
6 Eylül 2023
androidx.compose.animation:animation-*:1.5.1
yayınlandı. Sürüm 1.5.1 bu kayıtları içerir.
Sürüm 1.5.0
9 Ağustos 2023
androidx.compose.animation:animation-*:1.5.0
yayınlandı. 1.5.0 sürümü bu kayıtları içerir.
Sürüm 1.5.0-rc01
26 Temmuz 2023
androidx.compose.animation:animation-*:1.5.0-rc01
yayınlandı. 1.5.0-rc01 sürümü bu kayıtları içerir.
Hata Düzeltmeleri
MutableIntState
gibi temel bir durum türünde.value
çağrısının geçersiz düzeltme içeren hata analizi uyarısı bildirmesine neden olan sorun düzeltildi. İncelemede artık doğru mülke taşınmanız önerilecektir. (Iba953, b/287279257)mutableStateOf()
çağrılarının temel öğeler için karşılık gelen özel türlerine taşınmasını öneren isteğe bağlı bir denetim mevcuttur. lint kimliği:AutoboxingStateCreation
. Daha önce bu inceleme tüm projeler için varsayılan olarak etkindi. Bu uyarıyı Android Studio'nun düzenleyicisinde ve projenizin lint çıkışlarında görmek için, modülünüzünbuild.gradle
veyabuild.gradle.kts
yapılandırmasındawarning "AutoboxingStateCreation"
öğesini aşağıda gösterildiği gibi tanımlayarak önem derecesini bilgi amaçlı iken uyarı (veya daha yüksek) olarak değiştirin:android { lint { warning "AutoboxingStateCreation" } ... }
Sürüm 1.5.0-beta03
28 Haziran 2023
androidx.compose.animation:animation-*:1.5.0-beta03
yayınlandı. 1.5.0-beta03 sürümü bu kayıtları içerir.
Sürüm 1.5.0-beta02
7 Haziran 2023
androidx.compose.animation:animation-*:1.5.0-beta02
yayınlandı. 1.5.0-beta02 sürümü bu kayıtları içerir.
Sürüm 1.5.0-beta01
24 Mayıs 2023
androidx.compose.animation:animation-*:1.5.0-beta01
yayınlandı. 1.5.0-beta01 sürümü bu kayıtları içerir.
API Değişiklikleri
- Yeniden oluşturma, renk animasyonları ve
AndroidComposeView
(Ib2bfa) kapsamındaki ayırmalar kaldırıldı
Hata Düzeltmeleri
- İlkbahar animasyonlarından ayırmalar kaldırıldı (Ie9431)
Sürüm 1.5.0-alpha04
10 Mayıs 2023
androidx.compose.animation:animation-*:1.5.0-alpha04
yayınlandı. Sürüm 1.5.0-alpha04 bu kayıtları içerir.
API Değişiklikleri
- Geçişin ne zaman gerçekleşeceği konusunda daha fazla kontrol sahibi olmak için
ContentKey
artıkAnimatedContent
ürününde desteklenmektedir. (Ic069b)
Sürüm 1.5.0-alpha03
19 Nisan 2023
androidx.compose.animation:animation-*:1.5.0-alpha03
yayınlandı. Sürüm 1.5.0-alpha03 bu kayıtları içerir.
Yeni Özellikler
LookaheadScope
dahilindeSubcomposeLayout
için yeni varsayılan davranış. Koşullu alanları (ör.TabRow
,Scaffold
,BoxWithConstraints
vb.) olmayanSubcomposeLayouts
ürününün ileri doğru animasyonlarla düzgün şekilde çalışmasını sağlar.
API Değişiklikleri
- İleriye dönük geçişteki ölçüm politikasını yeniden kullanan yeni varsayılan
intermediateMeasurePolicy
,Scaffold
,TabRow
veBoxWithConstraints
gibi koşullu alanlar içermeyenSubcomposeLayout
alt türünün varsayılan olarak ileri düzey öğeyle çalışmasına olanak tanır. (Id84c8) - Giriş ve çıkış geçişlerini birleştirmek için infix eğlencesini
togetherWith
olarak yeniden adlandırın. Lambda içeriği için alıcı olarak yeniAnimatedContentScope
. (Ic39ae)
Sürüm 1.5.0-alpha02
5 Nisan 2023
androidx.compose.animation:animation-*:1.5.0-alpha02
yayınlandı. Sürüm 1.5.0-alpha02 bu kayıtları içerir.
Yeni Özellikler
SubcomposeLayout
bölgesinde önceden izlemeyi destekleyecek yeni deneysel API. Bu,SubcomposeLayout
tarayıcısınınLookaheadScope
içinde düzgün çalışmasını sağlar. BelirliSubcomposeLayout
alt türleri için yakında daha fazla kullanıma hazır destek sağlanacaktır.
API Değişiklikleri
- Aramaya dayalı animasyonlar sırasında ölçüm/düzen mantığını yönetmek için ek bir ara önlem politikası uygulayan yeni
SubcomposeLayout
API'si. (I017d3)
Sürüm 1.5.0-alpha01
22 Mart 2023
androidx.compose.animation:animation-*:1.5.0-alpha01
yayınlandı. Sürüm 1.5.0-alpha01 bu kayıtları içerir.
API Değişiklikleri
AnimatedContent
API'ler artık kararlı durumdaAnimatedContentScope
,AnimatedContentTransitionScope
olarak yeniden adlandırıldı.scaleIn
vescaleOut
artık kararlı API'lerdir. (Iaf54e)
Sürüm 1.4
Sürüm 1.4.3
3 Mayıs 2023
androidx.compose.animation:animation:1.4.3
, androidx.compose.animation:animation-core:1.4.3
ve androidx.compose.animation:animation-graphics:1.4.3
hiçbir değişiklik yapılmadan yayınlandı (yalnızca sürüm güncellemesi).
Sürüm 1.4.2
19 Nisan 2023
androidx.compose.animation:animation:1.4.2
, androidx.compose.animation:animation-core:1.4.2
ve androidx.compose.animation:animation-graphics:1.4.2
, hiçbir değişiklik olmadan serbest bırakıldı. 1.4.2 sürümü bu kayıtları içerir.
Sürüm 1.4.1
5 Nisan 2023
androidx.compose.animation:animation:1.4.1
, androidx.compose.animation:animation-core:1.4.1
ve androidx.compose.animation:animation-graphics:1.4.1
, hiçbir değişiklik olmadan serbest bırakıldı. 1.4.1 sürümü bu kayıtları içerir.
Sürüm 1.4.0
22 Mart 2023
androidx.compose.animation:animation:1.4.0
, androidx.compose.animation:animation-core:1.4.0
ve androidx.compose.animation:animation-graphics:1.4.0
yayınlandı. 1.4.0 sürümü bu kayıtları içerir.
1.3.0'dan sonraki önemli değişiklikler
- Araç etiketi r
ememberInfiniteTransition
'de veInfiniteTransition
ile Geçiş üzerindeki tüm uzantı işlevlerinde (ör.InfiniteTransition#animateColor
) (I56ef7) desteklenir.
Sürüm 1.4.0-rc01
8 Mart 2023
androidx.compose.animation:animation:1.4.0-rc01
, androidx.compose.animation:animation-core:1.4.0-rc01
ve androidx.compose.animation:animation-graphics:1.4.0-rc01
, hiçbir değişiklik olmadan serbest bırakıldı. 1.4.0-rc01 sürümü bu kayıtları içerir.
Sürüm 1.4.0-beta02
22 Şubat 2023
androidx.compose.animation:animation:1.4.0-beta02
, androidx.compose.animation:animation-core:1.4.0-beta02
ve androidx.compose.animation:animation-graphics:1.4.0-beta02
, hiçbir değişiklik olmadan serbest bırakıldı. 1.4.0-beta02 sürümü bu kayıtları içerir.
Sürüm 1.4.0-beta01
8 Şubat 2023
androidx.compose.animation:animation:1.4.0-beta01
, androidx.compose.animation:animation-core:1.4.0-beta01
ve androidx.compose.animation:animation-graphics:1.4.0-beta01
, hiçbir değişiklik olmadan serbest bırakıldı. 1.4.0-beta01 sürümü bu kayıtları içerir.
Sürüm 1.4.0-alpha05
25 Ocak 2023
androidx.compose.animation:animation:1.4.0-alpha05
, androidx.compose.animation:animation-core:1.4.0-alpha05
ve androidx.compose.animation:animation-graphics:1.4.0-alpha05
yayınlandı. Sürüm 1.4.0-alpha05 bu kayıtları içerir.
Değişiklik
- Son alfa sürümünden bu yana animasyon kitaplıklarında değişiklik yok, yalnızca sürüm geçişi
Sürüm 1.4.0-alpha04
11 Ocak 2023
androidx.compose.animation:animation:1.4.0-alpha04
, androidx.compose.animation:animation-core:1.4.0-alpha04
ve androidx.compose.animation:animation-graphics:1.4.0-alpha04
yayınlandı. Sürüm 1.4.0-alpha04 bu kayıtları içerir.
Yeni Özellikler
- Araç etiketi
rememberInfiniteTransition
ürününde veInfiniteTransition
ileTransition
üzerindeki tüm uzantı işlevlerinde (ör.InfiniteTransition#animateColor
) (I56ef7) desteklenir.
API Değişiklikleri
InfiniteTransition#TransitionAnimationState
veInfiniteTransition#animations
API'leri artık herkese açık. (I36682)
Sürüm 1.4.0-alpha03
7 Aralık 2022
androidx.compose.animation:animation:1.4.0-alpha03
, androidx.compose.animation:animation-core:1.4.0-alpha03
ve androidx.compose.animation:animation-graphics:1.4.0-alpha03
yayınlandı. Sürüm 1.4.0-alpha03 bu kayıtları içerir.
API Değişiklikleri
- Oluşturma kuralı kullanılan kullanıcı arayüzü testlerinde,
withFrameNanos
geri çağırmaları sırasında devam ettirilen devamlar, tüm çerçeve geri çağırma işlemlerinin çalışması bitene kadar dağıtılmaz. Bu, normal çalışırken oluşturma davranışıyla eşleşir. Ancak, eski davranışa dayanan testler başarısız olabilir. Bu, yalnızca doğrudanwithFrameNanos
veyawithFrameMillis
çağrısı yapan kodu etkilemelidir ve geri çağırma işlevinin içine taşınması gerekebilecek bu işlevlere aktarılan geri çağırma dışında bir mantığa sahiptir. Örnekler için bu EKL'deki animasyon testi değişikliklerine bakın. withFrameNanos
geri çağırmalarından sonra, ancak arayanların eş yordamlarını devam ettirmeden önce kodu çalıştırmak içinTestMonotonicFrameClock
oluşturucuya ve fabrika işlevine isteğe bağlıonPerformTraversals: (Long) -> Unit
parametresi eklendi. (Idb413, b/254115946, b/222093277, b/255802670)AnimatedContent
içinde araç etiketi için yeni parametre (Iebe2d)
Sürüm 1.4.0-alpha02
9 Kasım 2022
androidx.compose.animation:animation:1.4.0-alpha02
, androidx.compose.animation:animation-core:1.4.0-alpha02
ve androidx.compose.animation:animation-graphics:1.4.0-alpha02
yayınlandı. Sürüm 1.4.0-alpha02 bu kayıtları içerir.
API Değişiklikleri
- Araçların Composable'ın (Ie6614) dahili durumlarını değiştirmesine izin vermek için
ToolingState
ekleyin
Sürüm 1.4.0-alpha01
24 Ekim 2022
androidx.compose.animation:animation:1.4.0-alpha01
, androidx.compose.animation:animation-core:1.4.0-alpha01
ve androidx.compose.animation:animation-graphics:1.4.0-alpha01
yayınlandı. Sürüm 1.4.0-alpha01 bu kayıtları içerir.
Hata Düzeltmeleri
- Animasyon İçeriğindeki yanlış kesinti animasyonunu düzeltme (b/238662479)
Sürüm 1.3
Sürüm 1.3.3
11 Ocak 2023
androidx.compose.animation:animation:1.3.3
, androidx.compose.animation:animation-core:1.3.3
ve androidx.compose.animation:animation-graphics:1.3.3
yayınlandı. 1.3.3 sürümü bu kayıtları içerir.
- 1.3.2'den bu yana değişiklik yok.
Sürüm 1.3.2
7 Aralık 2022
androidx.compose.animation:animation:1.3.2
, androidx.compose.animation:animation-core:1.3.2
ve androidx.compose.animation:animation-graphics:1.3.2
yayınlandı. 1.3.2 sürümü bu kayıtları içerir.
Hata Düzeltmeleri
- androidx.compose.ui 1.3.2 sürümünü destekleyecek şekilde güncellendi
Sürüm 1.3.1
9 Kasım 2022
androidx.compose.animation:animation:1.3.1
, androidx.compose.animation:animation-core:1.3.1
ve androidx.compose.animation:animation-graphics:1.3.1
yayınlandı. 1.3.1 sürümü bu kayıtları içerir.
Sürüm 1.3.0
24 Ekim 2022
androidx.compose.animation:animation:1.3.0
, androidx.compose.animation:animation-core:1.3.0
ve androidx.compose.animation:animation-graphics:1.3.0
yayınlandı. 1.3.0 sürümü bu kayıtları içerir.
1.2.0'dan sonraki önemli değişiklikler
- Yeni yumuşatma işlevleri grubu kararlı hale getirildi
Sürüm 1.3.0-rc01
5 Ekim 2022
androidx.compose.animation:animation:1.3.0-rc01
, androidx.compose.animation:animation-core:1.3.0-rc01
ve androidx.compose.animation:animation-graphics:1.3.0-rc01
yayınlandı. 1.3.0-rc01 sürümü bu kayıtları içerir.
Sürüm 1.3.0-beta03
21 Eylül 2022
androidx.compose.animation:animation:1.3.0-beta03
, androidx.compose.animation:animation-core:1.3.0-beta03
ve androidx.compose.animation:animation-graphics:1.3.0-beta03
yayınlandı. 1.3.0-beta03 sürümü bu kayıtları içerir.
- 1.3.0-beta02 sürümünden bu yana değişiklik yapılmamıştır.
Sürüm 1.3.0-beta02
7 Eylül 2022
androidx.compose.animation:animation:1.3.0-beta02
, androidx.compose.animation:animation-core:1.3.0-beta02
ve androidx.compose.animation:animation-graphics:1.3.0-beta02
yayınlandı. 1.3.0-beta02 sürümü bu kayıtları içerir.
- Kotlin.experimental, kullanımdan kaldırıldığı için derleyici seçeneklerinden kaldırıldı
Sürüm 1.3.0-beta01
24 Ağustos 2022
androidx.compose.animation:animation:1.3.0-beta01
, androidx.compose.animation:animation-core:1.3.0-beta01
ve androidx.compose.animation:animation-graphics:1.3.0-beta01
yayınlandı. 1.3.0-beta01 sürümü bu kayıtları içerir.
Sürüm 1.3.0-alpha03
10 Ağustos 2022
androidx.compose.animation:animation:1.3.0-alpha03
, androidx.compose.animation:animation-core:1.3.0-alpha03
ve androidx.compose.animation:animation-graphics:1.3.0-alpha03
yayınlandı. Sürüm 1.3.0-alpha03 bu kayıtları içerir.
API Değişiklikleri
- Araç etiketi (Iac08a) için
Crossfade
,animateAsState
veAnimatable
içinde yeni parametre - Animasyon karelerini belirli bir süredeki değer yerine kesirli olarak tanımlamak için
atFraction
işlevi eklendi. (I20c76, b/232059455)
Sürüm 1.3.0-alpha02
27 Temmuz 2022
androidx.compose.animation:animation:1.3.0-alpha02
, androidx.compose.animation:animation-core:1.3.0-alpha02
ve androidx.compose.animation:animation-graphics:1.3.0-alpha02
yayınlandı. Sürüm 1.3.0-alpha02 bu kayıtları içerir.
Sürüm 1.3.0-alpha01
29 Haziran 2022
androidx.compose.animation:animation:1.3.0-alpha01
, androidx.compose.animation:animation-core:1.3.0-alpha01
ve androidx.compose.animation:animation-graphics:1.3.0-alpha01
yayınlandı. Sürüm 1.3.0-alpha01 bu kayıtları içerir.
API Değişiklikleri
- Gerçek ölçümden/düzenden önce ileriye dönük geçişi destekleyen yeni
LookaheadLayout
. Bu yöntem, değiştiğinde düzenin önceden hesaplanmasına olanak tanırken, aynı zamanda boyutu ve konumları hedefe doğru hareket ettirmek için önceden hesaplanmış boyutu/konumu kullanmasına da izin verir.SubcomposeLayouts
henüz desteklenmiyor ancak yakın zamanda yayınlanacak bir sürümde desteklenecektir. (I477f5)
Sürüm 1.2
Sürüm 1.2.1
10 Ağustos 2022
androidx.compose.animation:animation:1.2.1
, androidx.compose.animation:animation-core:1.2.1
ve androidx.compose.animation:animation-graphics:1.2.1
yayınlandı. 1.2.1 sürümü bu kayıtları içerir.
Sürüm 1.2.0
27 Temmuz 2022
androidx.compose.animation:animation:1.2.0
, androidx.compose.animation:animation-core:1.2.0
ve androidx.compose.animation:animation-graphics:1.2.0
yayınlandı. 1.2.0 sürümü bu kayıtları içerir.
1.1.0'dan sonraki önemli değişiklikler
- Animasyon oluşturma artık Geliştirici Seçenekleri'ndeki "Animatör süre ölçeği" ayarını destekliyor.
- Yeni deneysel yumuşatma eğrilerinden oluşan geniş bir seçim.
AnimatedImageVector
artıkrepeatCount
verepeatMode
özelliklerini destekliyor
Sürüm 1.2.0-rc03
29 Haziran 2022
androidx.compose.animation:animation:1.2.0-rc03
, androidx.compose.animation:animation-core:1.2.0-rc03
ve androidx.compose.animation:animation-graphics:1.2.0-rc03
yayınlandı. 1.2.0-rc03 sürümü bu kayıtları içerir.
- 1.2.0-rc02 sürümünden beri değişiklik yok.
Sürüm 1.2.0-rc02
22 Haziran 2022
androidx.compose.animation:animation:1.2.0-rc02
, androidx.compose.animation:animation-core:1.2.0-rc02
ve androidx.compose.animation:animation-graphics:1.2.0-rc02
yayınlandı. 1.2.0-rc02 sürümü bu kayıtları içerir.
Hata Düzeltmeleri
- Yumuşak geçiş işlevlerindeki
ExperimentalEasingApi
ek açıklaması kaldırıldı (Ied441)
Sürüm 1.2.0-rc01
15 Haziran 2022
androidx.compose.animation:animation:1.2.0-rc01
, androidx.compose.animation:animation-core:1.2.0-rc01
ve androidx.compose.animation:animation-graphics:1.2.0-rc01
yayınlandı. 1.2.0-rc01 sürümü bu kayıtları içerir.
API Değişiklikleri
- Oluşturma kitaplıklarındaki arayüzler artık jdk8 varsayılan arayüz yöntemleri (I5bcf1) kullanılarak oluşturuluyor
Sürüm 1.2.0-beta03
1 Haziran 2022
androidx.compose.animation:animation:1.2.0-beta03
, androidx.compose.animation:animation-core:1.2.0-beta03
ve androidx.compose.animation:animation-graphics:1.2.0-beta03
yayınlandı. 1.2.0-beta03 sürümü bu kayıtları içerir.
API Değişiklikleri
- Animasyonlar için Deneysel Yumuşak Geçiş Eğrileri eklendi (I64a38)
Sürüm 1.2.0-beta02
18 Mayıs 2022
androidx.compose.animation:animation:1.2.0-beta02
, androidx.compose.animation:animation-core:1.2.0-beta02
ve androidx.compose.animation:animation-graphics:1.2.0-beta02
yayınlandı. 1.2.0-beta02 sürümü bu kayıtları içerir.
Sürüm 1.2.0-beta01
11 Mayıs 2022
androidx.compose.animation:animation:1.2.0-beta01
, androidx.compose.animation:animation-core:1.2.0-beta01
ve androidx.compose.animation:animation-graphics:1.2.0-beta01
yayınlandı. 1.2.0-beta01 sürümü bu kayıtları içerir.
- Bu, 1.2'nin ilk beta sürümüdür! Son alfa sürümünden bu yana değişiklik yok.
Sürüm 1.2.0-alpha08
20 Nisan 2022
androidx.compose.animation:animation:1.2.0-alpha08
, androidx.compose.animation:animation-core:1.2.0-alpha08
ve androidx.compose.animation:animation-graphics:1.2.0-alpha08
yayınlandı. Sürüm 1.2.0-alpha08 bu kayıtları içerir.
Sürüm 1.2.0-alpha07
6 Nisan 2022
androidx.compose.animation:animation:1.2.0-alpha07
, androidx.compose.animation:animation-core:1.2.0-alpha07
ve androidx.compose.animation:animation-graphics:1.2.0-alpha07
yayınlandı. Sürüm 1.2.0-alpha07 bu kayıtları içerir.
API Değişiklikleri
AnimatedImageVector
artıkrepeatCount
verepeatMode
özelliklerini destekliyor (Ia3e75, b/199304067)
Sürüm 1.2.0-alpha06
23 Mart 2022
androidx.compose.animation:animation:1.2.0-alpha06
, androidx.compose.animation:animation-core:1.2.0-alpha06
ve androidx.compose.animation:animation-graphics:1.2.0-alpha06
yayınlandı. Sürüm 1.2.0-alpha06 bu kayıtları içerir.
API Değişiklikleri
- Geçerli düzen yönü sağdan solaysa
VectorPainter
öğesinin içeriğini çevirmek için otomatik yansıtmayı desteklemek üzere vektör çekilebilirlerinin ayrıştırılması güncellendi. (I79cd9, b/185760237)
Hata Düzeltmeleri
- Vektör grafik API'leri
@UiComposable
yerine uygun composable@VectorComposable
ek açıklamasını kullanacak şekilde güncellendi (I942bc)
Sürüm 1.2.0-alpha05
9 Mart 2022
androidx.compose.animation:animation:1.2.0-alpha05
, androidx.compose.animation:animation-core:1.2.0-alpha05
ve androidx.compose.animation:animation-graphics:1.2.0-alpha05
yayınlandı. Sürüm 1.2.0-alpha05 bu kayıtları içerir.
API Değişiklikleri
- Harika! Animasyon oluşturma artık Geliştirici Seçenekleri'ndeki "Animatör süre ölçeği" ayarını destekliyor. (I5a4fc, b/161675988)
Sürüm 1.2.0-alpha04
23 Şubat 2022
androidx.compose.animation:animation:1.2.0-alpha04
, androidx.compose.animation:animation-core:1.2.0-alpha04
ve androidx.compose.animation:animation-graphics:1.2.0-alpha04
yayınlandı. Sürüm 1.2.0-alpha04 bu kayıtları içerir.
Sürüm 1.2.0-alpha03
9 Şubat 2022
androidx.compose.animation:animation:1.2.0-alpha03
, androidx.compose.animation:animation-core:1.2.0-alpha03
ve androidx.compose.animation:animation-graphics:1.2.0-alpha03
yayınlandı. Sürüm 1.2.0-alpha03 bu kayıtları içerir.
Sürüm 1.2.0-alpha02
26 Ocak 2022
androidx.compose.animation:animation:1.2.0-alpha02
, androidx.compose.animation:animation-core:1.2.0-alpha02
ve androidx.compose.animation:animation-graphics:1.2.0-alpha02
yayınlandı. Sürüm 1.2.0-alpha02 bu kayıtları içerir.
Sürüm 1.2.0-alpha01
12 Ocak 2022
androidx.compose.animation:animation:1.2.0-alpha01
, androidx.compose.animation:animation-core:1.2.0-alpha01
ve androidx.compose.animation:animation-graphics:1.2.0-alpha01
yayınlandı. Sürüm 1.2.0-alpha01 bu kayıtları içerir.
API Değişiklikleri
<animated-vector>
kaynak dosyasını yüklemek içinanimatedVectorResource
yerineAnimatedImageVector.animatedVectorResource
politikasını kullanın.AnimatedImageVector
oluşturmak içinAnimatedImageVector#painterFor
yerinerememberAnimatedVectorResource
kullanın. (I9c300)
Hata Düzeltmeleri
- Animatable ve AnimationResult öğesine toString yöntemleri ekleyin. (Icd3a6)
Bağımlılık Güncellemeleri
- Artık Kotlin
1.6.10
hizmetini kullanabilirsiniz.
Sürüm 1.1
Sürüm 1.1.1
23 Şubat 2022
androidx.compose.animation:animation:1.1.1
, androidx.compose.animation:animation-core:1.1.1
ve androidx.compose.animation:animation-graphics:1.1.1
yayınlandı. 1.1.1 sürümü bu kayıtları içerir.
Hata Düzeltmeleri
androidx.compose.ui.platform.RenderNodeLayer.updateDisplayList
adresindekiNullPointerException
sorununu düzeltin (aosp/1947059, b/206677462)- Android'de panodan okuma sırasında pano içeriğinin neden kilitlenmesi düzeltildi. (I06020, b/197769306)
LazyVerticalGrid
içinde sabit RTL (aosp/1931080, b/207510535)
Sürüm 1.1.0
9 Şubat 2022
androidx.compose.animation:animation:1.1.0
, androidx.compose.animation:animation-core:1.1.0
ve androidx.compose.animation:animation-graphics:1.1.0
yayınlandı. 1.1.0 sürümü bu kayıtları içerir.
1.0.0'dan sonraki önemli değişiklikler
- Android 12 Fazla kaydırma efekti için kararlı destek
- Dokunma hedefi boyutlandırmasıyla ilgili iyileştirmeler
- Compose 1.0'da Material bileşenlerinin düzen alanlarını, dokunma hedefi boyutu için Materyal erişilebilirlik yönergelerini karşılayacak şekilde genişleteceğini unutmayın. Örneğin, Düğmenin boyutunu daha küçük olarak ayarlasanız bile Düğme dokunma hedefi minimum 48x48 dp boyuta genişler. Bu işlem, Compose Materyalini Materyal Tasarım Bileşenleri ile aynı davranışla uyumlu hale getirir ve Görünümler ve Oluşturma öğelerini birlikte kullandığınızda tutarlı bir davranış sağlar. Bu değişiklik, kullanıcı arayüzünüzü Material Material bileşenlerini kullanarak oluşturduğunuzda, dokunma hedefi erişilebilirliği için minimum gereksinimlerin karşılanmasını da sağlar.
- Navigasyon Rail için kararlı destek
- Daha önce deneysel olan bazı API'leri kararlı sürüme geçirir
- Kotlin'in yeni sürümleri için destek
Sürüm 1.1.0-rc03
26 Ocak 2022
androidx.compose.animation:animation:1.1.0-rc03
, androidx.compose.animation:animation-core:1.1.0-rc03
ve androidx.compose.animation:animation-graphics:1.1.0-rc03
yayınlandı. 1.1.0-rc03 sürümü bu kayıtları içerir.
Hata Düzeltmeleri
- Compose Material 1.1.0-rc03 sürümünü desteklemek için güncellendi
Sürüm 1.1.0-rc01
15 Aralık 2021
androidx.compose.animation:animation:1.1.0-rc01
ve androidx.compose.animation:animation-core:1.1.0-rc01
yayınlandı. 1.1.0-rc01 sürümü bu kayıtları içerir.
API Değişiklikleri
<animated-vector>
kaynak dosyasını yüklemek içinanimatedVectorResource
yerineAnimatedImageVector.animatedVectorResource
politikasını kullanın.AnimatedImageVector
oluşturmak içinAnimatedImageVector#painterFor
yerinerememberAnimatedVectorResource
kullanın. (I9c300)
Sürüm 1.1.0-beta04
1 Aralık 2021
androidx.compose.animation:animation:1.1.0-beta04
, androidx.compose.animation:animation-core:1.1.0-beta04
ve androidx.compose.animation:animation-graphics:1.1.0-beta04
yayınlandı. 1.1.0-beta04 sürümü bu kayıtları içerir.
Yeni Özellikler
- Kotlin
1.6.0
ile uyumlu olacak şekilde güncellendi
Sürüm 1.1.0-beta03
17 Kasım 2021
androidx.compose.animation:animation:1.1.0-beta03
, androidx.compose.animation:animation-core:1.1.0-beta03
ve androidx.compose.animation:animation-graphics:1.1.0-beta03
yayınlandı. 1.1.0-beta03 sürümü bu kayıtları içerir.
API Değişiklikleri
- Yerleşim değişikliğinin gözlemlenmesine olanak tanımak için yeni Modifier.onPlaced değiştiricisi eklendi. Bu nedenle, gözlemlenen yerleşim değişikliğine göre alt değiştiriciye ait ofsette ek değişiklikler yapılabilir. (I558fd)
Çapraz geçişte contentKey için yeni destek. ContentKey, animasyon sistemi tarafından eşitlik kontrolü için kullanılacaktır. Bu nedenle, eyaletler üzerinde özel fark, farklı durumlar için uygun contentKey belirtilerek yapılabilir.
ContentKey, içeriğin kaydedilmesi ve geri yüklenmesi için anahtar olarak da kullanılır. (I2e055, b/197907070)
Sürüm 1.1.0-beta02
3 Kasım 2021
androidx.compose.animation:animation:1.1.0-beta02
, androidx.compose.animation:animation-core:1.1.0-beta02
ve androidx.compose.animation:animation-graphics:1.1.0-beta02
yayınlandı. 1.1.0-beta02 sürümü bu kayıtları içerir.
Hata Düzeltmeleri
- Araçları destekleyen yeni animasyon API'leri. Özellikle, araçların animasyonları ve yapılandırmalarını Geçişler içinde incelemesine olanak tanır. (I4116e)
Sürüm 1.1.0-beta01
27 Ekim 2021
androidx.compose.animation:animation:1.1.0-beta01
, androidx.compose.animation:animation-core:1.1.0-beta01
ve androidx.compose.animation:animation-graphics:1.1.0-beta01
yayınlandı. 1.1.0-beta01 sürümü bu kayıtları içerir.
API Değişiklikleri
- Araçları destekleyen yeni animasyon API'leri. Özellikle, araçların animasyonları ve yapılandırmalarını Geçişler içinde incelemesine olanak tanır. (I4116e)
Sürüm 1.1.0-alpha06
13 Ekim 2021
androidx.compose.animation:animation:1.1.0-alpha06
, androidx.compose.animation:animation-core:1.1.0-alpha06
ve androidx.compose.animation:animation-graphics:1.1.0-alpha06
yayınlandı. 1.1.0-alpha06 sürümü bu kayıtları içerir.
Sürüm 1.1.0-alpha05
29 Eylül 2021
androidx.compose.animation:animation:1.1.0-alpha05
, androidx.compose.animation:animation-core:1.1.0-alpha05
ve androidx.compose.animation:animation-graphics:1.1.0-alpha05
yayınlandı. Sürüm 1.1.0-alpha05 bu kayıtları içerir.
API Değişiklikleri
EnterTransition
,ExitTransition
ve bazıAnimatedVisibility
API kararlı hale getirildi. Ayrıca,MutableTransitionState.isIdle
artık deneme aşamasında değildir. (I5072d)Büyük değişiklik: Enter/ExitTransition fabrikalarındaki lambda'lar, parametre listesindeki son konuma taşındı. (I5072d)
Sürüm 1.1.0-alpha04
15 Eylül 2021
androidx.compose.animation:animation:1.1.0-alpha04
, androidx.compose.animation:animation-core:1.1.0-alpha04
ve androidx.compose.animation:animation-graphics:1.1.0-alpha04
yayınlandı. Sürüm 1.1.0-alpha04 bu kayıtları içerir.
Sürüm 1.1.0-alpha03
1 Eylül 2021
androidx.compose.animation:animation:1.1.0-alpha03
, androidx.compose.animation:animation-core:1.1.0-alpha03
ve androidx.compose.animation:animation-graphics:1.1.0-alpha03
yayınlandı. Sürüm 1.1.0-alpha03 bu kayıtları içerir.
Yeni Özellikler
1.1.0-alpha03
oluşturma işlemi, Kotlin1.5.30
biçimini temel alacak şekilde güncellendi. (I74545)
Sürüm 1.1.0-alpha02
18 Ağustos 2021
androidx.compose.animation:animation:1.1.0-alpha02
, androidx.compose.animation:animation-core:1.1.0-alpha02
ve androidx.compose.animation:animation-graphics:1.1.0-alpha02
yayınlandı. Sürüm 1.1.0-alpha02 bu kayıtları içerir.
API Değişiklikleri
- StartOffset, artık başlangıç zamanını ertelemenin veya animasyon başlamadan önce animasyonu hızlı ileri sarmanın bir yolu olarak tekrarlanabilir ve infiniteTekrarlanabilir modlarda desteklenmektedir. Bu başlangıç ofseti tekrarlanmaz (Ic679f, b/195079908)
- Ölçeklendirme için yeni Giriş/Çıkış geçişi. Diğer Enter/ExitTransitions türleriyle birlikte kullanılabilir. (I372da, b/191325593)
Sürüm 1.1.0-alpha01
4 Ağustos 2021
androidx.compose.animation:animation:1.1.0-alpha01
, androidx.compose.animation:animation-core:1.1.0-alpha01
ve androidx.compose.animation:animation-graphics:1.1.0-alpha01
yayınlandı. Sürüm 1.1.0-alpha01 bu kayıtları içerir.
API Değişiklikleri
AnimatedImageVector
ve ilgili API'ler artık yeniandroidx.compose.animation:animation-graphics
modülünde. (I60873)
Hata Düzeltmeleri
InfiniteAnimationPolicy
dosyası :compose:ui konumuna taşındı (I5eb09, b/160602714)
Sürüm 1.0
Sürüm 1.0.5
3 Kasım 2021
androidx.compose.animation:animation:1.0.5
ve androidx.compose.animation:animation-core:1.0.5
yayınlandı. 1.0.5 sürümü bu kayıtları içerir.
Hata Düzeltmeleri
- türvedStateOf örneklerinin kilitlenmesini izlemeyle ilgili bir sorun düzeltildi. (aosp/1792247)
Sürüm 1.0.4
13 Ekim 2021
androidx.compose.animation:animation:1.0.4
ve androidx.compose.animation:animation-core:1.0.4
yayınlandı. 1.0.4 sürümü bu kayıtları içerir.
Bağımlılık Güncellemeleri
- Kotlin
1.5.31
temel alınarak güncellendi
Sürüm 1.0.3
29 Eylül 2021
androidx.compose.animation:animation:1.0.3
ve androidx.compose.animation:animation-core:1.0.3
yayınlandı. 1.0.3 sürümü bu kayıtları içerir.
Bağımlılık Güncellemeleri
- Kotlin
1.5.30
temel alınarak güncellendi
Sürüm 1.0.2
1 Eylül 2021
androidx.compose.animation:animation:1.0.2
ve androidx.compose.animation:animation-core:1.0.2
yayınlandı. 1.0.2 sürümü bu kayıtları içerir.
Compose 1.0.2
sürümünü desteklemek için güncellendi. 1.0.2
oluşturma işlemi, Kotlin 1.5.21
ile hâlâ uyumlu.
Sürüm 1.0.1
4 Ağustos 2021
androidx.compose.animation:animation:1.0.1
ve androidx.compose.animation:animation-core:1.0.1
yayınlandı. 1.0.1 sürümü bu kayıtları içerir.
Bağımlılık Güncellemeleri
- Kotlin
1.5.21
temel alınarak güncellendi.
Sürüm 1.0.0
28 Temmuz 2021
androidx.compose.animation:animation:1.0.0
ve androidx.compose.animation:animation-core:1.0.0
yayınlandı. 1.0.0 sürümü bu kayıtları içerir.
1.0.0'ın temel özellikleri
Bu, Compose'un ilk kararlı sürümüdür. Daha fazla bilgi için lütfen resmi Sürüm Oluşturma bloguna göz atın!
Bilinen Sorunlar
Android Studio Bumblebee Canary 4 veya AGP
7.1.0-alpha04
/7.1.0-alpha05
kullanıyorsanız şu kilitlenmeyle karşılaşabilirsiniz:java.lang.AbstractMethodError: abstract method "void androidx.lifecycle.DefaultLifecycleObserver.onCreate(androidx.lifecycle.LifecycleOwner)"
Sorunu düzeltmek için
build.gradle
dosyanızda minSdkVersion değerini geçici olarak 24+ sürümüne yükseltin. Bu sorun, Android Studio Bumblebee ve AGP7.1
sürümünün bir sonraki sürümünde düzeltilecektir. (b/194289155)
Sürüm 1.0.0-rc02
14 Temmuz 2021
androidx.compose.animation:animation:1.0.0-rc02
ve androidx.compose.animation:animation-core:1.0.0-rc02
yayınlandı. 1.0.0-rc02 sürümü bu kayıtları içerir.
Sürüm 1.0.0-rc01
1 Temmuz 2021
androidx.compose.animation:animation:1.0.0-rc01
ve androidx.compose.animation:animation-core:1.0.0-rc01
yayınlandı. 1.0.0-rc01 sürümü bu kayıtları içerir.
Hata Düzeltmeleri
InfiniteAnimationPolicy
,androidx.compose.ui:ui
klasörüne taşındı (I5eb09, b/160602714)
Sürüm 1.0.0-beta09
16 Haziran 2021
androidx.compose.animation:animation:1.0.0-beta09
ve androidx.compose.animation:animation-core:1.0.0-beta09
yayınlandı. 1.0.0-beta09 sürümü bu kayıtları içerir.
API Değişiklikleri
- Yeni
AnimatedContent
Oluşturulabilir. Yeni hedef içerik girerken ve ilk içerik çıkarken özelleştirilebilirContentTransform
kullanarak içerik değişikliğini yönetir. Özelleştirilmiş bir görünüm ve his yaratmak için farklı giriş ve çıkış geçişleri kombinasyonu kullanılabilir. İçerik dönüştürme işleminin bir parçası olarakAnimatedContent
, gelen içerikle uyumlu olması için boyutunu otomatik olarak canlandırır. (I2c3df) ManualFrameClock
kaldırıldı. Animasyonları kontrol etmeniz gerekirse bunun yerinecomposeTestRule.mainClock
işlevini kullanın. (I3c3e8, b/189951065)
Eklenmiş Profil Kuralları
Bu sürümde aşağıdaki oluşturma modüllerine (I14ed6) profil kuralları eklenir:
- androidx.compose.animation
- androidx.compose.animation-core
- androidx.compose.temel
- androidx.compose.foundation-layout
- androidx.compose.material
- androidx.compose.material-dalga
- androidx.compose.runtime
- androidx.compose.ui
- androidx.compose.ui.geometry
- androidx.compose.ui.graphics
- androidx.compose.ui.text
- androidx.compose.ui.text
- androidx.compose.ui.unit
- androidx.compose.ui.util
Profil kuralları nedir?
Bir kitaplığa ilişkin profil kuralları,
src/main
veya eşdeğer dizinde bulunanbaseline-prof.txt
metin dosyasında belirtilir. Dosya, satır başına bir kural belirtir. Bu örnekte, bir kural kitaplıktaki yöntemler veya sınıflarla eşleştirme kalıbıdır. Bu kuralların söz dizimi,adb shell profman --dump-classes-and-methods ...
kullanılırken kullanılan, kullanıcılar tarafından okunabilir ART profili biçiminin üst kümesidir. Bu kurallar, yöntemleri veya sınıfları hedeflemek için iki biçimden birini alır.Bir yöntem kuralı aşağıdaki kalıba sahip olur:
<FLAGS><CLASS_DESCRIPTOR>-><METHOD_SIGNATURE>
Bir sınıf kuralı aşağıdaki kalıba sahip olur:
<CLASS_DESCRIPTOR>
Burada
<FLAGS>
, bu yöntemin "Popüler", "Başlangıç" veya "Başlangıç Sonrası" olarak işaretlenip işaretlenmemesi gerektiğini belirtmek içinH
,S
veP
karakterlerinden bir veya daha fazlasını içerir.<CLASS_DESCRIPTOR>
, hedeflenen yöntemin ait olduğu sınıfı tanımlar. Örneğin,androidx.compose.runtime.SlotTable
sınıfındaLandroidx/compose/runtime/SlotTable;
tanımlayıcısı olur.<METHOD_SIGNATURE>
, yöntemin imzasıdır ve yöntemin adını, parametre türlerini ve dönüş türlerini içerir. Örneğin,LayoutNode
üzerindekifun isPlaced(): Boolean
yöntemiisPlaced()Z
imzasına sahiptir.Tek bir kuralın birden fazla yöntemi veya sınıfı kapsamasını sağlamak için bu kalıplar joker karakterler (
**
,*
ve?
) içerebilir.
Kurallar ne işe yarar?
H
işaretine sahip bir yöntem, bu yöntemin "sıcak" bir yöntem olduğunu ve önceden derlenmesi gerektiğini belirtir.S
işaretine sahip bir yöntem, bunun başlangıçta çağrılan bir yöntem olduğunu ve derleme ile yöntemi başlatma sırasında yorumlama maliyetinden kaçınmak için önceden derlenmesi gerektiğini belirtir.P
işaretine sahip bir yöntem, bunun başlatma sonrasında çağrılan bir yöntem olduğunu gösterir.Bu dosyada bulunan bir sınıf, başlangıç sırasında kullanıldığını ve sınıf yükleme maliyetinden kaçınmak için yığında önceden ayrılması gerektiğini gösteriyor.
Nasıl çalışır?
- Kitaplıklar, AAR yapılarında paketlenecek bu kuralları tanımlayabilir. Bu yapıları içeren bir uygulama oluşturulduğunda, bu kurallar birleştirilir ve birleştirilen kurallar, uygulamaya özel kompakt bir ikili program ART profili oluşturmak için kullanılır. Uygulama cihazlara yüklendiğinde ART, uygulamanın performansını özellikle ilk çalıştırmada iyileştirmek için uygulamanın belirli bir alt kümesini önceden derlemek amacıyla bu profilden yararlanabilir. Bu işlemin hata ayıklaması yapılabilir uygulamalar üzerinde etkisi olmayacağını unutmayın.
Sürüm 1.0.0-beta08
2 Haziran 2021
androidx.compose.animation:animation:1.0.0-beta08
ve androidx.compose.animation:animation-core:1.0.0-beta08
yayınlandı. 1.0.0-beta08 sürümü bu kayıtları içerir.
Hata Düzeltmeleri
- Artık
detectDragGesures
,detectVerticalGestures
vedetectHorizontalGestures
konum değişikliğini otomatik olarak kullanacak; onDrag geri çağırmalarında change.consumePositionChange çağrılmasına gerek yoktur (I42fc4, b/185096350, b/187320697) Modifier.onGloballyPositioned()
, tüm değiştiriciler uygulandıktan sonra düzen koordinatlarını değil, değiştirici zincirindeki bu değiştiricinin koordinatlarını bildirmek için değiştirildi. Bu, artık değiştiricilerin sıralamasının, hangi koordinatların raporlanacağını etkilediği anlamına gelir. (Ieb67d, b/177926591)
Sürüm 1.0.0-beta07
18 Mayıs 2021
androidx.compose.animation:animation:1.0.0-beta07
ve androidx.compose.animation:animation-core:1.0.0-beta07
yayınlandı. 1.0.0-beta07 sürümü bu kayıtları içerir.
API Değişiklikleri
MutableTransitionState
içinde belirtilecek görünürlüğü destekleyen yeniAnimatedVisibility
API. Bu, animasyon durumlarınıncurrentState
veisIdle
aracılığıylaAnimatedVisibility
dışında gözlemlenmesine de olanak tanır.- Geçiş sürecinde çocuklar için yeni geçiş desteği
- AnimationScope.transition öğesini kullanarak Animasyon Görünürlüğünde özel çıkış/giriş geçiş animasyonunu destekleme
- Tüm AnimatedGörünürlük alt öğeleri için erişilebilen yeni animasyonluEnterExit değiştiricisi
initiallyVisible
parametresi (I702f3) alan Animasyonlu Görünürlüğü API'leri kullanımdan kaldırıldı
Sürüm 1.0.0-beta06
5 Mayıs 2021
androidx.compose.animation:animation:1.0.0-beta06
ve androidx.compose.animation:animation-core:1.0.0-beta06
yayınlandı. 1.0.0-beta06 sürümü bu kayıtları içerir.
Sürüm 1.0.0-beta05
21 Nisan 2021
androidx.compose.animation:animation:1.0.0-beta05
ve androidx.compose.animation:animation-core:1.0.0-beta05
yayınlandı. 1.0.0-beta05 sürümü bu kayıtları içerir.
Hata Düzeltmeleri
- ui-test-manifest veui-tooling-data içindeki AndroidManifest dosyaları artık Android 12 (I6f9de, b/184718994) ile uyumlu.
Sürüm 1.0.0-beta04
7 Nisan 2021
androidx.compose.animation:animation:1.0.0-beta04
ve androidx.compose.animation:animation-core:1.0.0-beta04
yayınlandı. 1.0.0-beta04 sürümü bu kayıtları içerir.
API Değişiklikleri
RowScope
,ColumnScope
,BoxScope
,BoxWithConstraintsScope
adlı uygulamanın herkese açık örnekleri kaldırıldı. (I4e83e, b/181869067)
Sürüm 1.0.0-beta03
24 Mart 2021
androidx.compose.animation:animation:1.0.0-beta03
ve androidx.compose.animation:animation-core:1.0.0-beta03
yayınlandı. 1.0.0-beta03 sürümü bu kayıtları içerir.
Sürüm 1.0.0-beta02
10 Mart 2021
androidx.compose.animation:animation:1.0.0-beta02
ve androidx.compose.animation:animation-core:1.0.0-beta02
yayınlandı. 1.0.0-beta02 sürümü bu kayıtları içerir.
Hata Düzeltmeleri
- Deneysel API'lerin herkese açık kullanımında kısıtlamalar uygula (I6aa29, b/174531520)
Sürüm 1.0.0-beta01
24 Şubat 2021
androidx.compose.animation:animation:1.0.0-beta01
ve androidx.compose.animation:animation-core:1.0.0-beta01
yayınlandı. 1.0.0-beta01 sürümü bu kayıtları içerir.
Bu, Compose 1.0.0 Beta'nın ilk sürümüdür.
API Değişiklikleri
InteractionState
,[Mutable]InteractionSource
ile değiştirildi- Arayüzler, Etkileşim etkinliklerini yayınlamaktan / toplamaktan sorumludur.
interactionState = remember { InteractionState() }
öğesiniButton
veModifier.clickable()
gibi bileşenlere iletmek yerineinteractionSource = remember { MutableInteractionSource() }
işlevini kullanın.Interaction.Pressed in interactionState
yerine, EngagementSource.collectIs PressedAsState() gibi uzantı işlevlerini kullanmalısınız.- Karmaşık kullanım örneklerinde, Etkileşimlerin akışını gözlemlemek için EtkileşimKaynak.interactions'ı kullanabilirsiniz. Daha fazla bilgi için EngagementSource belgelerine ve örneklerine bakın.
- (I85965, b/152525426, b/171913923, b/171710801, b/174852378)
- smoothScrollBy and scrollBy yöntemlerinin paketleri
androidx.compose.foundation.gestures.*
olarak değiştirildi (I3f7c1, b/175294473) - Boyut değiştiriciler yeniden adlandırıldı. Modifier.width/height/size, requiredWidth/requiredHeight/requiredSize olarak yeniden adlandırıldı. Modifier.preferredWidth/preferredHeight/preferredSize, genişlik/yükseklik/boyut olarak yeniden adlandırıldı. (I5b414)
- Yön, temel paketine taşındı. VelocirtTracker, ui.gesture'dan ui.input.pointer'a taşındı. (Iff4a8, b/175294473)
- AnimationClockObservable ve alt sınıflar kaldırıldı. Animasyonlu Kayan öğe kaldırıldı. (Icde52, b/177457083)
- Modifier.draggable artık basit bir lambda yerine DraggableState'i kabul eder. Öncekiyle aynı davranışı elde etmek için
rememberDraggableState { delta -> }
aracılığıyla durum oluşturabilirsiniz (Ica70f, b/175294473) - canlandırma, animasyonlu değer, AnimasyonluDeğer API'leri kaldırıldı (If27bc, b/177457083)
- AnimationEndWhy.Interrupted kaldırıldı. Animasyon kesintiye uğrarsa CancelException bildirilir. (I2cbbc, b/179695417)
- TargetAnimation API kaldırıldı. (If47d1, b/177457083)
Sürüm 1.0.0-alpha12
10 Şubat 2021
androidx.compose.animation:animation:1.0.0-alpha12
ve androidx.compose.animation:animation-core:1.0.0-alpha12
yayınlandı. 1.0.0-alpha12 sürümü bu kayıtları içerir.
API Değişiklikleri
Modifier.pointerInput
artık işaretçi girişi algılama eşinin yeni bağımlılıklar için ne zaman yeniden başlatılması gerektiğini belirtmek için hatırlama tuşlarını gerektiriyor. (I849cd)- Sınırlar, DpRect (I4b32a) olarak yeniden adlandırıldı
- AnimationSpec parametre adı, animasyon sistemi genelinde activitySpec olarak birleştirildi. Ayrıca, Enter/ExitTransition'ı, FiniteAnimationSpec özelliği kabul edecek şekilde sınırlayın. (Ie47c5, b/177457083)
- Animatable.snapTo ve Animatable.stop artık askıya alma işlevleri (If4288) oldu
state { 0 }
composable'ı kaldırdığımız ve artıkremember { mutableStateOf(0) }
gibi kullanımı teşvik ettiğimiz şekildesavedInstanceState { 0 }
composable'ı da kaldıracağız. Bunun yerinerememberSaveable { mutableStateOf(0) }
kullanmanız gerekir. MutableState içinde kullanılan tür pakette depolanıyorsa otomatik olarak kaydedilip geri yüklenir. Daha önce bir özel tasarruf nesnesi iletiyorsanız şimdistateSaver
parametresine sahip Hatırlanabilirlik özelliğinin yeni bir aşırı yüklenmesini kullanmanız gerekir. Kullanım şöyle görünür:val holder = rememberSaveable(stateSaver = HolderSaver) { mutableStateOf(Holder(0)) }
(Ib4c26, b/177338004)- Animasyon sisteminin geri kalanıyla daha tutarlı olacak şekilde Crossfade'in yöntem imzası güncellendi. (Ib05ed, b/177457083)
- HatırlatıcıInstanceState(), comeSaveable() olarak yeniden adlandırıldı ve androidx.compose.runtime.saveable paketine taşındı. (I1366e, b/177338004)
- RestorableStateHolder, SaveableStateHolder olarak yeniden adlandırıldı ve androidx.compose.runtime.saveable paketine taşındı. İç yöntem RestorableStateProvider, SaveableStateProvider olarak yeniden adlandırıldı. Herhangi birini anahtar olarak geçirebilmeniz için genel tür kaldırıldı. Deneysel ek açıklamaya artık ihtiyaç yoktur. (I0902e, b/174598702)
- Modifier.animateContentSize API, animasyon sisteminin geri kalanıyla tutarlı olacak şekilde güncellendi. (I0bf75, b/177457083)
- Canlandırma Değeri/Kayan artık kullanımdan kaldırıldı. Lütfen bunun yerine Animasyonu kullanın. (I71345, b/177457083)
- dokununhareket filtresi, çiftehafizasi hareketFiltresi, uzunBasın Hareket Filtresi ve basIndicaitonHareket Filtresi kullanımdan kaldırılmıştır. Bunun yerine, Detfier.clickable'ı ya da Modifier.pointerInput'u tespit etmek için Dokunma Hareketleri işleviyle kullanın. (I6baf9, b/175294473)
- Sonsuz animasyonlara uygulanacak bir
InfiniteAnimationPolicy
eş yordam bağlam öğesi kullanıma sunuldu. Varsayılan olarak, testlerinComposeTestRule
ile çalıştırıldığı durumlar dışında herhangi bir politika yüklenmez. (I50ec4, b/151940543) - Destructure ve copy() yöntemleri, nadiren kullanıldıkları çeşitli sınıflardan kaldırılmıştır. (I26702, b/178659281)
- Animasyondaki oynatma süresi artık nanosaniyelere ayarlanmıyor (If776a)
- Composer:runtime-dispatch yapısı kullanımdan kaldırıldı. MonotonicFrameClock artık write:runtime'da, AndroidUiDispatcher ise Composer:ui'de bulunabilir. (Ib5c36)
- Bir animasyonun sonsuz olup olmadığını belirten
Animation.isInfinite
veVectorizedAnimationSpec.isInfinite
eklendi. Bu, bu tür animasyonların özel olarak işlenmesini sağlamak için animasyon uygulamalarında kullanılabilir. Örneğin, özel bir "kalan süre" mesajı gösterilebilir veya testler sırasında animasyon, boşta kalma süresinin süresiz olarak beklenmesini önlemek için iptal edilebilir. (Iebb05, b/151940543) - Animasyon süresi türü olarak Çalışma Süresi yerine Uzun seçeneğini kullanın (Ie3aa7, b/177420019)
Sürüm 1.0.0-alpha11
28 Ocak 2021
androidx.compose.animation:animation:1.0.0-alpha11
ve androidx.compose.animation:animation-core:1.0.0-alpha11
yayınlandı. Sürüm 1.0.0-alpha11 bu kayıtları içerir.
API Değişiklikleri
- TransitionDefinition tabanlı Geçiş desteği sonlandırıldı (I0ac57)
- Araçlarda görüntülenecek geçiş ve alt animasyonlar için bir etiket alanı eklendi (I619fb)
- canlandırmaAsState artık animasyonluFooAsState oldu. Burada Foo, animasyonlu değişkenin türüdür. Ör. Kayma, Dp, Offset vb. (Ie7e25)
- İstediğiniz sayıda alt animasyon çalıştıran yeni InfiniteTransition. (I1da81)
- Materyal durum bilgili parametre arayüzlerini,
State<T>
değerini döndüren @Composable işlevlerine sahip olacak şekilde değiştirir. Animasyonlu bir öğeyi Duruma dönüştürmeyi kolaylaştırmak için Animatable.asState() işlevini ekler. Ayrıca, animasyonluElevation'ı, Animatable'da bir askıya alma uzantısı olarak değiştirir. (If613c)
Hata Düzeltmeleri
- onCommit, onDispose ve onActive desteği sonlandırıldı ve yerini SideEffect ve DisposableEffect API'leri (If760e) aldı.
- Güncelleme Geçişinde İlk Durum artık desteklenmektedir (Ifd51d)
- Resim ve Simge'ye içerik açıklaması parametresi eklendi. Erişilebilirlik hizmetleriyle (I2ac4c) ilgili açıklama sağlamak için kullanılır
- inverify ve engagementReference() işlevleri artık sırasıyla currentRecomposeScope ve remindersCompositionReference koduyla kullanımdan kaldırılmıştır. (I583a8)
- Süre ve Çalışma Süresi, Uzun milisaniyelerle değiştirilir ve bu adım, bu sınıflardaki işaretçi girişinin bağımlılığını ortadan kaldırır. (Ia33b2, b/175142755, b/177420019)
- Artık beste dışında tıklanabilir, geçiş yapılabilir ve seçilebilir olarak oluşturulabilir (I0a130, b/172938345, b/175294473)
- Yumuşak geçiş, işlevsel bir arayüze dönüştürüldü (Ib14e5)
- LazyColumn/LazyRow/LazyVerticalGrid kapsamı için yeni
items(count: Int)
fabrika yöntemi.items(items: List)
veitemsIndexed(items: List)
artık uzantı işlevleri olduğundan bunları kullanıldıklarında manuel olarak içe aktarmanız gerekir. Diziler için yeni uzantı aşırı yüklemeleri: items(items: Array) ve itemsIndexed(Array) (I803fc, b/175562574) - Testlerde TestCoroutineDispatcher'dan yararlanma (I532b6)
- PointerInputData kaldırıldı ve tüm PointerInputData alanlarını vermek için PointerInputChange ile değiştirildi. Herkese açık API'lerde kullanılmadıkları için PointerInputEvent ve PointerInputEventData verilerini dahili hale getirdi. (Ifff97, b/175142755)
Sürüm 1.0.0-alfa10
13 Ocak 2021
androidx.compose.animation:animation:1.0.0-alpha10
ve androidx.compose.animation:animation-core:1.0.0-alpha10
yayınlandı. Sürüm 1.0.0-alpha10 bu kayıtları içerir.
API Değişiklikleri
- Değiştirilmiş Hız, bileşen parçaları ve matematiksel işlemlere sahip olacak şekilde değiştirildi. (Ib0447)
@ExperimentalTesting
öğesinin adı, benzer deneysel API ek açıklamalarıyla (Ia4502, b/171464963) tutarlı olacak şekilde@ExperimentalTestApi
olarak değiştirildi- Position (Konum) DpOffset olarak yeniden adlandırıldı ve getDistance() (Ib2dfd) kaldırıldı
- Any.identityHashCode() herkese açık API (I025d7) kaldırıldı
Hata Düzeltmeleri
- Animasyonları arasında karşılıklı dışlama sağlayan yeni eş yordam tabanlı API
Animatable
. Çok boyutlu azalma animasyonunu destekleyecek yeni DecayAnimationSpec (I820f2, b/168014930) animate()
artıkT
yerineState<T>
döndürenanimateAsState()
ile değiştiriliyor. Geçersiz kılma kapsamı State değerinin okunduğu yere daraltılabileceği için bu daha iyi performans sağlar. (Ib179e)
Sürüm 1.0.0-alpha09
16 Aralık 2020
androidx.compose.animation:animation:1.0.0-alpha09
ve androidx.compose.animation:animation-core:1.0.0-alpha09
yayınlandı. Sürüm 1.0.0-alpha09 bu kayıtları içerir.
API Değişiklikleri
- Dp.VectorConverter, Position.VectorConverter vb. değeri annimation-core'a taşındı ve eski VectorConveters'ın (If0c4b) desteği sonlandırıldı.
- İyileştirilmiş kullanım kolaylığının yanı sıra dinamik olarak eklenen animasyonlar ve dinamik olarak hesaplanan animasyon hedeflerini destekleyen yepyeni bir Transition API grubu kullanıma sunuldu. Bu API'ler, TransitionDefinition tabanlı API'den kolayca ayırt edilebilmeleri için deneysel olarak işaretlenmiştir. (Ia7fe3)
Hata Düzeltmeleri
- Ofset değiştiricilerindeki lambda'lar artık Kayma yerine IntOffset değerini döndürüyor. (Ic9ee5, b/174137212, b/174146755)
- LazyColumnFor, LazyRowFor, LazyColumnForIndexed ve LazyRowForIndexed" değerlerini kullanımdan kaldırın. Bunun yerine LazyColumn ve LazyRow'u kullanın (I5b48c)
- İşaretçi giriş API'lerinin askıya alınması için HandlePointerInputScope, AwaitPointerEventScope vehandlePointerInput() adı awaitPointerEventScope() olarak yeniden adlandırıldı. (Idf0a1, b/175142755)
- InfiniteRepeatableSpec (I668e5) oluşturmak için yeni infiniteRepeatable işlevi
- ExperimentalPointerInput ek açıklaması kaldırıldı (Ia7a24)
Sürüm 1.0.0-alpha08
2 Aralık 2020
androidx.compose.animation:animation:1.0.0-alpha08
ve androidx.compose.animation:animation-core:1.0.0-alpha08
yayınlandı. 1.0.0-alpha08 sürümü bu kayıtları içerir.
API Değişiklikleri
- Oluşturma yönergeleriyle tutarlılığı kontrol etmek amacıyla, composable lambda parametresi adlandırma ve konumu için lint denetimi eklendi.
Ayrıca, hata analizi ve yönlendirmelerine uygun şekilde, sonraki lambda'nın adı olarak
children
kullanan bazı API'lericontent
konumuna taşıdı. (Iec48e) - Daha önce kullanımdan kaldırılan API'ler kaldırıldı:
Modifier.onPositioned
kaldırıldı,Modifier.onGloballyPositioned
kullanın.Modifier.onDraw
kaldırıldı,Modifier.onDrawBehind
kullanın.Modifier.plus
kaldırıldı,Modifier.then
kullanın.Color.Unset
kaldırıldı,Color.Unspecified
kullanın.PxBounds
sınıf kaldırıldı, bunun yerineRect
sınıfını kullanın.- (Ie9d02, b/172562222)
- TestAnimationClock'ın MonotonicFrameClock tarafından çalıştırılmasına izin veren geçici bir seçenek eklendi (I1403b, b/173402197)
Hata Düzeltmeleri
- Değiştirme. (I0bd29, b/173834241)
- DrawLayer için kolaylık sağlamak amacıyla Modifier.scale/rotate API'leri eklendi.
- Modifier.drawOpacity'nin adı, Modifier.alpha olarak değiştirildi
- Modifier.drawShadow'un adı, Modifier.shadow olarak değiştirildi (I264ca, b/173208140)
- PointerInputData'nın çalışma süresi ve konum alanlarını boş değerli hale getirdi. (Id468a)
- OffPx değiştiricileri, ofset olarak yeniden adlandırıldı. Artık State yerine lambda parametrelerini alıyorlar. (Ic3021, b/173594846)
- Eş yordamlarda animasyon çalıştırmak için yeni API'ler (Ied662)
- Kullanımdan kaldırılmış Ambiyanslar ve Compose API kurallarına uyarak son eki
Ambient
olan Ambiyans sonekleri, ön ekinde Ambiyans olan yeni özelliklerle değiştirildi. (I33440) - Testlerdeki zaman kontrolü (TestAnimationClock ve kullanımları) artık deneyseldir (I6ef86, b/171378521)
- Eski kullanıcı arayüzü testi modülünü ve saplamalarını kaldırın (I3a7cb)
RestorableStateHolder.withRestorableState
işlevi,RestorableStateProvider
(I66640) olarak yeniden adlandırıldı- Hizalama arayüzü güncellendi ve işlevsel hale getirildi. (I46a07, b/172311734)
Sürüm 1.0.0-alpha07
11 Kasım 2020
androidx.compose.animation:animation:1.0.0-alpha07
ve androidx.compose.animation:animation-core:1.0.0-alpha07
yayınlandı. 1.0.0-alpha07 sürümü bu kayıtları içerir.
Hata Düzeltmeleri
- AmbientTextStyle, ProvideTextStyle ve AmbientContentColor kullanımdan kaldırıldı. Bunun yerine, Malzeme kitaplığındaki yeni sürümleri kullanın. Materyal dışı uygulamalar için bunun yerine, kendi bileşenlerinizde kullanılabilen kendi tasarım sisteminize özel tema ortamları oluşturmanız gerekir. (I74acc, b/172067770)
- foundation.Text desteği sonlandırıldı ve text.Text ile değiştirildi. Temadaki değerleri kullanmayan, temel ve yorumsuz bir metin API'si için androidx.compose.foundation.BasicText adresine bakın. (If64cb)
- MeasureResult, MeasureScope dışına taşındı. (Ibf96d, b/171184002)
- Düzenle ilgili çeşitli simgeler androidx.compose.ui'den androidx.compose.layout.ui konumuna taşındı. (I0fa98, b/170475424)
Sürüm 1.0.0-alpha06
28 Ekim 2020
androidx.compose.animation:animation:1.0.0-alpha06
ve androidx.compose.animation:animation-core:1.0.0-alpha06
yayınlandı. 1.0.0-alpha06 sürümü bu kayıtları içerir.
API Değişiklikleri
- ComposeTestRule'da geçişleri etkinleştirin; yanıp sönen imleci etkinleştirmek için ComposeTestRule'daki seçeneği kaldırın. (If0de3)
Sürüm 1.0.0-alpha05
14 Ekim 2020
androidx.compose.animation:animation:1.0.0-alpha05
ve androidx.compose.animation:animation-core:1.0.0-alpha05
yayınlandı. 1.0.0-alpha05 sürümü bu kayıtları içerir.
API Değişiklikleri
- Yeni Animasyon arayüzü ve alt sınıflar: Bu sınıflar, animasyonların başlangıç ve bitiş koşullarını depolar ve bu nedenle değer ve hızın yalnızca oynatma süresi (Ie95bd, b/163329867) üzerinden sorgulanmasına olanak tanır.
Hata Düzeltmeleri
- OnPositionedModifier, OnGloballyPositionedModifier ve onPositioned() olarak onGloballyPositioned() olarak yeniden adlandırılır. (I587e8, b/169083903)
contentColor() ve currentTextStyle() API'lerini kullanımdan kaldırır ve bunları sırasıyla AmbientContentColor ve AmbientTextStyle ambients ile değiştirir. Geçerli değere, ambiyans özelliğinde (diğer ambiyanslarda olduğu gibi)
.current
kullanarak erişebilirsiniz. Bu değişiklik, tutarlılık amacıyla ve aynı şeyi birden çok yolla başarmamak için yapılmıştır. Ek olarak, amaçlarını daha iyi açıklamak için bazı ambiyans özelliklerini aşağıdaki şekilde yeniden adlandırır:- ContentColorAmbient -> AmbientContentColor
- TextStyleAmbient -> AmbientTextStyle
- IndicationAmbient -> AmbientIndication
- Vurgu Ortamı -> AmbiyansEmphasisLevels
- Dalga TemasıAmbient -> Ambiyans Dalgası Teması (I37b6d)
Sürüm 1.0.0-alpha04
1 Ekim 2020
androidx.compose.animation:animation:1.0.0-alpha04
ve androidx.compose.animation:animation-core:1.0.0-alpha04
yayınlandı. Sürüm 1.0.0-alpha04 bu kayıtları içerir.
API Değişiklikleri
- Ek açıklamalı rootAnimationClockFactory, migrationsEnabled, blinkingCursorEnabled ve textInputServiceFactory ile @VisibleForTesting öğelerini dahili API yapın ve kdoc'larını gizleyin (I554eb, b/168308412)
Hata Düzeltmeleri
- Birçok Grafik API güncellendi
- Ölçek ve rotasyon dönüşüm API'leri, DrawScope ve DrawTransform'daki x/y koordinatları için ayrı float parametreleri yerine, pivot koordinatı temsil eden tek bir Offset parametresi kullanacak şekilde güncellendi.
- Rect.expandToinclude ve Rect.join yöntemleri kaldırıldı
- Yarıçap belgeleri, eliptik bisiklete ek olarak oval olarak güncellendi
- Satır içi Yarıçap sınıfı için herkese açık oluşturucunun doğrudan çağrılmaması gerektiğini, bunun yerine Yarıçap nesnelerinin işlev kurucuları aracılığıyla örneklendirmesi gerektiğini belirten belgeler eklendi
- topRight,bottomRight, bottomCenter vb. sorgulamak için RoundRect API'leri kaldırıldı.
- Rect.translate'in yerini alan Rect.shift desteği sonlandırıldı
- RoundRect.grow ve Rect.shrink API'leri kaldırıldı
- RoundRect.outerRect, Rect.boundingRect olarak yeniden adlandırıldı
- RoundRect.middleRect/tallMiddleRect/wideMiddleRect ve Rect.isStadium yöntemleri kaldırıldı
- RoundRect.longestSide, RoundRect.maxDimension olarak yeniden adlandırıldı.
- RoundRect.shortestSide, RoundRect.minDimension olarak yeniden adlandırıldı
- RoundRect.center, işlev yerine bir özellik olarak değiştirildi
- RoundRect oluşturucusu, x/y yarıçap değerleri için bağımsız parametreler yerine Yarıçap özelliklerini kullanacak şekilde güncellendi
- Kaynağı 0,0 olan Dikdörtgen olduğunu varsayan Boyut API'leri kaldırıldı
- Yarıçapa yıkıcı bir API eklendi
- Çeşitli RoundRect uzantı işlevlerini mülk olacak şekilde taşıdılar.
- (I8f5c7, b/168762961)
- foundation.Box kullanımdan kaldırıldı. Lütfen bunun yerine foundation.layout.Box kullanın. (Ie5950, b/167680279)
- Yığın, Box olarak yeniden adlandırıldı. Daha önce mevcut olan Box kullanımdan kaldırılacak ve yerini generate.foundation.layout'ta yeni Box kullanıma sunacaktır. Yeni Box'ın davranışı, birden fazla alt öğeye sahip olduğunda alt öğeleri üst üste yığmaktır. Bu, bir Sütuna benzer şekilde davranan önceki Box'tan farklıdır. (I94893, b/167680279)
- Kutu süsleme parametreleri kullanımdan kaldırıldı. Kutunuzda süslemeler/dolgu olmasını istiyorsanız bunun yerine Değiştiriciler'i (Modifier.background, Modifier.border, Modifier.padding) (Ibae92, b/167680279) kullanın
- Düzen kapsamlarının içeriklerinin (ör. RowScope içindeki alignWithSiblings) statik içe aktarılmasını engelledik. Bunun yerine açık kapsam alternatifi kullanılmalıdır:
with(RowScope) { Modifier.alignWithSiblings(FirstBaseline) }
. (I216be, b/166760797)
Sürüm 1.0.0-alpha03
16 Eylül 2020
androidx.compose.animation:animation:1.0.0-alpha03
ve androidx.compose.animation:animation-core:1.0.0-alpha03
yayınlandı. 1.0.0-alpha03 sürümü bu kayıtları içerir.
Hata Düzeltmeleri
- Yer çekimi kullanımları tutarlı bir şekilde, düzen API'leriyle uyumlu hale gelecek şekilde yeniden adlandırıldı. (I2421a, b/164077038)
Sürüm 1.0.0-alpha02
2 Eylül 2020
androidx.compose.animation:animation:1.0.0-alpha02
ve androidx.compose.animation:animation-core:1.0.0-alpha02
yayınlandı. Sürüm 1.0.0-alpha02 bu kayıtları içerir.
API Değişiklikleri
Bu saatten kare bekleyen bir şey olup olmadığını görmek için
ManualFrameClock.hasAwaiters
eklendi; ManualFrameClock gerektiren testleri çalıştırırkenrunBlocking
yerinerunWithManualClock
, testlerinizde ana kullanıcı arayüzü görev dağıtıcısına kolay erişim sağlayanTestUiDispatcher.Main
eklendi.Örnek:
@Test fun myTest() = runWithManualClock { clock -> // set some compose content withContext(TestUiDispatcher.Main) { clock.advanceClock(1000L) } if (clock.hasAwaiters) { println("The clock has awaiters") } else { println("The clock has no more awaiters") } }
Hata Düzeltmeleri
onPreCommit kullanımdan kaldırıldı; onCommit artık onPreCommit davranışına sahiptir.
onCommit ve onActive artık bir sonraki koreograf karesinin başında değil, bestenin kaydedildiği koreograf karesinde çalışıyor. (I70403)
Sürüm 1.0.0-alpha01
26 Ağustos 2020
androidx.compose.animation:animation:1.0.0-alpha01
ve androidx.compose.animation:animation-core:1.0.0-alpha01
yayınlandı. 1.0.0-alpha01 sürümü bu kayıtları içerir.
Sürüm 0.1.0-dev
Sürüm 0.1.0-dev17
19 Ağustos 2020
androidx.compose.animation:animation:0.1.0-dev17
ve androidx.compose.animation:animation-core:0.1.0-dev17
yayınlandı. 0.1.0-dev17 sürümü bu kayıtları içerir.
Yeni Özellikler
API Değişiklikleri
- Başlangıç, satır içi sınıf (Iaec70) haline geldi
- IntOffset artık bir satır içi sınıftır (Iac0bf)
- IntSize artık bir satır içi sınıftır (I2bf42)
Animasyonlu Visibilty composable, alt içeriğin görünümünü ve kaybolmasını canlandırıyor.
EnterTransition ve ExitTransition, 3 farklı tür görünüm ve kaybolma animasyonu sağlamak üzere AnimatedVisibilty composable ile çalışmak için kullanıma sunulmuştur: şeffaflaştırma, kaydırma ve içeriği genişletme/daraltma. Daha ısmarlama bir görünüm ve tarz elde etmek için farklı animasyon türleri birleştirilebilir. (Idda11)
Rect'in lehine kullanımdan kaldırılan PxBounds PxBound'ların tüm kullanımları dikdörtgen biçiminde güncellendi ve taşıma işlemine yardımcı olmak için uygun kullanımdan kaldırma/değiştirme ek açıklamaları eklendi. (I37038, b/162627058)
Hata Düzeltmeleri
PlacementScope.placeAbsolute()
,PlacementScope.place()
olarak yeniden adlandırıldı ve öncekiPlacementScope.place()
,PlacementScope.placeRelative()
olarak yeniden adlandırıldı. Sonuç olarakPlacementScope.place()
yöntemi artık sağdan sola bağlamlarda konumu otomatik olarak yansıtmaz. Dilerseniz bunun yerinePlacementScope.placeRelative()
politikasını kullanabilirsiniz. (I873ac, b/162916675)- Artık
state { ... }
composable'ı kullanımdan kaldırılarak yerine açıkremember { mutableStateOf(...) }
çağrısı yapılması gerekiyor. Bu, genel API yüzeyini ve durum yönetimiyle ilgili kavramların sayısını azaltır ve sınıf özelliği yetkisi içinby mutableStateOf()
kalıbıyla eşleşir. (Ia5727)
Sürüm 0.1.0-dev16
5 Ağustos 2020
androidx.compose.animation:animation:0.1.0-dev16
ve androidx.compose.animation:animation-core:0.1.0-dev16
yayınlandı. 0.1.0-dev16 sürümü bu kayıtları içerir.
API Değişiklikleri
- Yerleşik birimleri dönüştürmek için kullanılan yerleşik vektör dönüştürücülere artık
Foo.VectorConverter
üzerinden erişilebilir. ör.Dp.VectorConverter
,Color.VectorConverter
,Float.VectorConverter
vb. (I3e273) Modifier.animateContentSize()
öğesinde son işleyiciyi destekleyin. Böylece, animasyonun boyutu değiştiğinde animasyonun başlangıç/bitiş boyutuyla birlikte dinleyiciye bildirim gönderilir. (I277b2)- Alt değiştiricisinin (Ieffdc) düzen boyutu değişikliğini canlandıran yeni animasyonluContentSize değiştiricisi
Yeni eş yordam tabanlı saatler ile eski geri çağırmaya dayalı saatleri kullanmaya devam eden API'ler arasındaki boşluğu doldurmak için
AnimationClockObservable
olarak MonotonicFrameClock kullanmanızı sağlayanMonotonicFrameAnimationClock
eklendi.MonotonicFrameClock
ManualAnimationClock
eşdeğeri artıkManualFrameClock
. (I111c7, b/161247083)
Hata Düzeltmeleri
- Sağdan sola desteğine yönelik API'ler güncellendi. Düzen yönünü okumak ve değiştirmek için kullanılabilen LayoutDirectionAmbient özelliği eklendi. Modifier.rtl ve Modifier.ltr kaldırıldı. (I080b3)
- Geçiş Tanımı için T türünün açıkça belirtilmesini gerekli kılın. (I1aded)
- foundation.shape.corner paketi, foundation.share'e düzleştirildi (I46491, b/161887429)
- Modifier.plus kullanımdan kaldırıldı, bunun yerine Modifier.then kullanın. "Ardından" daha güçlü bir sipariş sinyaline sahiptir. Ayrıca, zinciri bozan ve okunması daha zor olan
Modifier.padding().background() + anotherModifier
yazmayı da yasaklar (Iedd58, b/161529964) - Modifier.drawBackground, Modifier.background olarak yeniden adlandırıldı (I13677)
Sürüm 0.1.0-dev15
22 Temmuz 2020
androidx.compose.animation:animation:0.1.0-dev15
ve androidx.compose.animation:animation-core:0.1.0-dev15
yayınlandı. 0.1.0-dev15 sürümü bu kayıtları içerir.
Bağımlılıkları Güncelleme
- Compose'un
0.1.0-dev15
sürümünü kullanmak için bağımlılıklarınızı yukarıda Bağımlılık bildirme bölümünde gösterilen yeni kod snippet'lerine göre güncellemeniz gerekir.
API Değişiklikleri
- Transition API, TransitionState değerini alt öğelere iletmek yerine bir TransitionState döndürecek şekilde değiştirilmiştir. Bu, API'yianimate() API'leriyle daha tutarlı hale getirir. (I24e38)
- Çapraz geçiş için değiştirici parametre eklendi (I87cfe, b/159706180)
- Statik animasyon spesifikasyonu kavramını netleştirmek için üst düzey API'larda AnimationBuilder yerine AnimationSpec bileşenine
- AnimationSpecs (tween, bahar) oluşturmak için kullanılan lambda gereksinimini kaldırarak geçiş DSL'sini iyileştirin. Bunun yerine kurucu parametrelerini doğrudan alırlar.
- Oluşturuculara güvenmek yerine kurucular açarak AnimationSpec uygulamanın genel kullanım kolaylığını artırın
- KeyFrames ve Tween için süre ve gecikmeyi Int olarak değiştirin. Bu, gereksiz tür yayınlarını ve yöntem aşırı yüklemesini ortadan kaldırır (hem Long hem de Int'i desteklemek için). (Ica0b4)
- IntPx kullanımı Int ile değiştirildi. IntPxPosition değeri IntOffset olarak değiştirildi. IntPxSize, IntSize ile değiştirildi. (Ib7b44)
- Boyutlandırma bilgilerini temsil eden sınıfların sayısını birleştirmek için PxSize yerine Beden sınıfının kullanımını standartlaştırın. Bu, kayan öğe olarak gösterilen genişliği ve yüksekliği temsil etmek için uzun bir paket halinde 2 kayan reklam değerinden faydalanmak üzere satır içi sınıfın avantajlarını sağlar. (Ic0191)
- Konumlandırma bilgilerini temsil eden sınıfların sayısını birleştirmek için PxPosition yerine Offset sınıfının kullanımını standartlaştırın. Bu, kayan öğe olarak temsil edilen x ve y ofsetlerini temsil etmek için uzun bir paket şeklinde 2 kayan reklam değerinden faydalanmak üzere satır içi sınıfın avantajlarını sağlar. (I3ad98)
- Piksel parametreleri için yalnızca Dp ve temel türlere güvenmek amacıyla yapılan kapsamlı yeniden düzenleme çalışmaları kapsamında, çeşitli kompozisyon sınıflarında Px sınıfının kullanımı değiştirildi (I086f4)
- Dp, Px, Size, Position, Bounds, PxPosition, PxSize, PxBounds, IntPx, IntPxSize, IntPxPosition, IntPxBounds ve AnimationVector (Ib7518) için canlandırma() desteği eklendi.
- Çapraz geçiş, artık animasyonun yapılandırılmasına izin vermek için isteğe bağlı AnimationBuilder parametresini kabul ediyor (I6d6e0)
- API'deki tüm null yapılabilir Renk kullanımları, null özelliği olmayanlarla değiştirildi ve null yerine Color.Unset (Iabaa7) değeri kullanıldı
- ValueHolder sınıfı kaldırıldı. Animasyon değeri alanını soyut hale getirerek alt sınıfların değer güncellemesini izleyebilmesini sağlamak için Animasyon Değerini, Animasyonu kaydırma sınıflarını yeniden yapılandırdı.
- Canlandırma Değeri, Canlandırma Kayanlığı vb. için model sınıfları eklendi.
- Değerler arasında animasyon oluşturmak için yeni bir basit @Composable API grubu eklendi. (I79530)
- Ambients API'deki önemli değişiklikler. Ayrıntılar için günlüğe ve
Ambient<T>
dokümanlarına bakın (I4c7ee, b/143769776) - Yeni tekrar modu: Ters. Bu mod, animasyon TekrarlanabilirSpec veya VectorizedRepeatableSpec öğesinde tekrarlanırken önceki yinelemeyi tersine çevirir. (Ibe0f5)
- ManualAnimationClock'a API eklemeleri:
hasObservers: Boolean
vedispatchOnSubscribe: Boolean
kurucu parametresi (Iaa134) - Canlandırmalı Kayan'a min/maks. sınırları almak için API'ler eklendi (Icd9cc)
Hata Düzeltmeleri
runOnIdleCompose
,runOnIdle
(I83607) olarak yeniden adlandırıldı- Bazı test API'leri, daha sezgisel olacak şekilde yeniden adlandırıldı. Tüm findXYZ API'leri onNodeXYZ olarak yeniden adlandırıldı. Tüm doXYZ API'leri, performansXYZ olarak yeniden adlandırıldı. (I7f164)
- Alt düzey durum bilgisiz animasyon API'leri kullanıma sunuldu. Bu API'ler (I63bf7)
- Recompose composable artık yararlı bir soyutlama değil. Yeniden oluşturma işlemlerinin çoğu MutableState atamaları sonucunda gerçekleştirilmelidir. Bunun dışındaki her şey için geçerli kapsamın yeniden oluşturulmasını tetiklemek üzere
invalidate
işlevini kullanmanız önerilir. (Ifc992) - Piksel parametreleri için yalnızca Dp ve temel türlere güvenmeyi amaçlayan kapsamlı yeniden düzenleme çalışmaları kapsamında, çeşitli kompozisyon sınıflarında Px sınıfı kullanımı değiştirildi. Px sınıfı tamamen silindi (I3ff33)
- Piksel parametreleri (Id3434) için yalnızca Dp ve temel türlere güvenmek amacıyla yapılan kapsamlı yeniden düzenleme çalışmaları kapsamında, çeşitli kompozisyon sınıflarında Px sınıfı kullanımı değiştirildi
- Çapraz geçiş artık başlangıç değeri olarak null ile çalışabilir (Iad6a4, b/155947711)
- Piksel parametreleri (I19d02) için yalnızca Dp ve temel türlere güvenmek amacıyla yapılan kapsamlı yeniden düzenleme çalışmaları kapsamında, çeşitli kompozisyon sınıflarında Px sınıfının kullanımı değiştirildi
- Birleştirilmiş CanvasScope uygulamaları artık sadece DrawScope ve ContentDrawScope oluyor. CanvasScope'u DrawScope olarak adlandırıyoruz. DrawScope, Density arayüzünü uygulamak ve ContentDrawScope'ta LayoutDirection'da LayoutDirection'ı Silinmiş DrawScope alt sınıfı sağladı Painter ve PainterModifier artık RTL özelliğini sağlamayacak şekilde güncellendi (DrawScope bunu manuel olarak sağlamadan zaten sunduğu için (I1798e))
- Bunun yerine CanvasScope'u kullanıma sunmak için Tuval sunan daha üst düzey oluşturma API'leri güncellendi. Bu, tüketicilerin kendi Paint nesnelerini koruma ihtiyacını ortadan kaldırır. Hâlâ bir Tuval'e erişmesi gereken tüketiciler, çizim komutu vermek için alttaki Tuval'e geri çağırma sağlayandrawCanvas uzantı yöntemini kullanabilirler. (I80afd)
- Satır ve Sütuna sırasıyla verticalGravity ve horizontalGravity parametreleri eklendi. (I7dc5a)
- kullanıcı arayüzü modülü, ui-text-core (I57dec) olarak yeniden adlandırıldı
- DrawModifier API'yi iyileştirin:
- Draw() ContentDrawScope için alıcı kapsamı oluşturuldu
- Draw() üzerindeki tüm parametreler kaldırıldı
- DrawScope, eski CanvasScope ile aynı arayüze sahip
- ContentDrawScope'tadrawContent() yöntemi (Ibaced, b/152919067) bulunur
runOnIdleCompose
verunOnUiThread
artık ComposeTestRule'daki yöntemler yerine genel işlevlerdir. (Icbe8f)- [Mutable]Eyalet mülk delege operatörleri, Kotlin 1.4 mülk yetkilendirmesi optimizasyonlarını desteklemek için uzantılara taşındı. Arayanların
by state { ... }
veyaby mutableStateOf(...)
kullanmaya devam etmek için içe aktarma işlemleri eklemeleri gerekir. (I5312c) - ColoredRect kullanımdan kaldırıldı. Bunun yerine
Box(Modifier.preferredSize(width, height).drawBackground(color))
politikasını kullanın. (I499fa, b/152753731) - Değiştirici artı operatörü fabrika uzantı işlevleriyle değiştirildi (I225e4)
- Kullanımdan kaldırılan Center composable. Bu öğe, LayoutSize.Fill + LayoutLayout.Center değiştiricisi ile veya uygun değiştiricilerin uygulandığı Box ya da Stack composable'larından biriyle (Idf5e0) değiştirilmelidir.
- LayoutEsnek, Layoutweight olarak yeniden adlandırıldı. Sıkı parametre, doldurulacak şekilde yeniden adlandırıldı. (If4738)
- composable Opaklık işlevi,drawOpacity değiştiricisiyle değiştirildi. (I5fb62)
- AndroidComposeTestRule'ı kullanan testler artık bestenin köküne, bestenin manuel olarak duraklatılmasına, devam ettirilmesine ve geliştirilmesine izin veren bir animasyon saati sağlıyor. (Id54c5)
- LayoutPadding değiştiricisinde sağdan sola yönü destekleme (I9e8da)
- Density ve DensityScope tek bir arayüzde birleştirildi. ambientDensity() yerine artık DensityAmbient.current kodunu kullanabilirsiniz. withDensity(yoğunluk) yerine sadece with(yoğunluk) (I11cb1)
- Aşağıdakiler de dahil olmak üzere çeşitli satır içi sınıf türlerine kopyalama yöntemleri eklendi:
- Zaman farkı
- Boyut
- Yarıçap
- Hareket
- Dönüşüm Kaynağı
- Kullanımdan kaldırılan Size.copy tamamlayıcı nesne yöntemi yöntemi (Ife290, b/159905651)
- androidx.compose.ViewComposer, androidx.ui.node.UiComposer
androidx.compose.Emittable'a taşındı. ComponentNode ile yedekliyordu.
androidx.compose.ViewAdapters kaldırıldı. Bunlar artık desteklenen bir kullanım alanı değildir.
Compose.composeInto kullanımdan kaldırıldı. Bunun yerine
setContent
veyasetViewContent
kullanın. Compose.disposeComposition kullanımdan kaldırıldı. Bunun yerine,setContent
tarafından döndürülenComposition
üzerindekidispose
yöntemini kullanın. androidx.compose.Compose.subcomposeInto androidx.ui.core.subcomposeInto'ya taşındı ComponentNode#emitInsertAt, ComponentNode#insertAt olarak yeniden adlandırıldı ComponentNode#emitRemoveAt, ComponentNode#removeAt ComponentNode#emitMode0 olarak yeniden adlandırıldıComponentNode#removeAt#emitMode0 olarak yeniden adlandırıldı