پویانمایی Compose
androidx.compose.animation
androidx.compose.animation.core
androidx.compose.animation.graphics
(برای همه بستههای Compose، اسناد مرجع میانای برنامهسازی کاربردی را ببینید)
| جدیدترین بهروزرسانی | نسخه پایدار | نامزد انتشار | انتشار نسخه بتا | نسخه آلفا |
|---|---|---|---|---|
| ۷ اکتبر ۲۰۲۶ | ۱.۱۲.۱ | - | 1.13.0-beta01 | - |
ساختار
Compose ترکیبی از ۷ شناسه گروه Maven در androidx است. هر گروه
شامل زیرمجموعه هدفگذاریشدهای از عملکردها است که هرکدام مجموعه یادداشتهای انتشار خود را دارند.
این جدول گروهها و پیوندها به هر مجموعه از یادداشتهای انتشار را توضیح میدهد.
| گروه | شرح |
|---|---|
| compose.animation | در برنامههای Jetpack Compose خود پویانمایی بسازند تا تجربه کاربری را غنیتر کنند. |
| compose.compiler | با افزونه مترجم Kotlin، توابع @Composable را تبدیل کنید و بهینهسازیها را فعال کنید. |
| compose.foundation | برنامههای Jetpack Compose را با واحدهای سازنده آماده استفاده بنویسید و پایه را گسترش دهید تا عناصر سیستم طراحی خودتان را بسازید. |
| compose.material | با «عناصر طراحی Material» آماده استفاده، «میاناهای کاربر Jetpack Compose» بسازید. این نقطه ورود سطح بالاتر «نگارش» است که برای ارائه مؤلفههایی طراحی شده است که با مؤلفههای شرحدادهشده در www.material.io مطابقت دارند. |
| compose.material3 | ساختن میاناهای کاربر Jetpack Compose با «عناصر طراحی سهبعدی ۳»، تکامل بعدی «طراحی سهبعدی». «طراحی مادی ۳» شامل زمینهسازی و عناصر بهروزرسانیشده و ویژگیهای شخصیسازی «طراحی مادی شما» مثل رنگ پویا است و بهگونهای طراحی شده است که با سبک بصری جدید Android 12 و واسط کاربر سیستم منسجم باشد. |
| compose.runtime | واحدهای سازنده بنیادی مدل برنامهنویسی و مدیریت وضعیت Compose، و زمان اجرای اصلی برای هدفیابی «افزایه کامپایلر Compose». |
| compose.ui | عناصر اساسی میانای کاربر Compose که برای تعامل با دستگاه لازم است، ازجمله چیدمان، طراحی، و ورودی. |
اعلام وابستگیها
برای افزودن وابستگی به Compose، باید مخزن Google Maven را به پروژهتان اضافه کنید. برای اطلاعات بیشتر، مخزن Maven در Google را بخوانید.
وابستگیهای آرتیفکتهای موردنیازتان را در فایل build.gradle برای برنامه یا واحدتان اضافه کنید:
شیار
dependencies { implementation "androidx.compose.animation:animation:1.12.1" } android { buildFeatures { compose true } composeOptions { kotlinCompilerExtensionVersion = "1.5.15" } kotlinOptions { jvmTarget = "1.8" } }
کاتلین
dependencies { implementation("androidx.compose.animation:animation:1.12.1") } android { buildFeatures { compose = true } composeOptions { kotlinCompilerExtensionVersion = "1.5.15" } kotlinOptions { jvmTarget = "1.8" } }
برای اطلاعات بیشتر درباره وابستگیها، افزودن وابستگیهای ساخت را ببینید.
بازخورد
بازخوردتان به بهبود Jetpack کمک میکند. اگر مشکلات جدیدی پیدا کردید یا ایدههایی برای بهبود این کتابخانه دارید، به ما اطلاع دهید. لطفاً قبلاز ایجاد کتابخانه جدید، مشکلات موجود در این کتابخانه را بررسی کنید. با کلیک کردن روی دکمه ستاره میتوانید رأی خود را به یک مشکل موجود اضافه کنید.
برای کسب اطلاعات بیشتر، به مستندات «پیگیری مسائل» مراجعه کنید.
نسخه ۱.۱۳
نسخه 1.13.0-beta01
۷ اکتبر ۲۰۲۶
androidx.compose.animation:animation-*:1.13.0-beta01 منتشر شد. نسخه 1.13.0-beta01 شامل این تعهدات است.
تغییرات میانای برنامهسازی کاربردی
- کتابخانهها اکنون Kotlin 2.2 را هدفیابی میکنند و به kotlinc 2.2 نیاز دارند (I82396، b/498369605)
رفع اشکالها
- خرابی در SeekableTransitionState برطرف شد که در آن گرد کردن مقادیر NaN باعث پرتاب شدن IllegalArgumentException درطول گذرهای صفر-مدت یا قطعشده میشد. (I8f3a9, b/555294641)
نسخه 1.13.0-alpha03
۹ سپتامبر ۲۰۲۶
androidx.compose.animation:animation-*:1.13.0-alpha03 منتشر شد. نسخه 1.13.0-alpha03 شامل این تعهدها است.
تغییرات میانای برنامهسازی کاربردی
-
ExperimentalDeferredTransitionApiحذف شد. میاناهای برنامهسازی کاربردی انتقال معوق دیگر نیازی به موافقت آزمایشی ندارند. (Ib6430)
رفع اشکالها
-
compileSdkبرای کتابخانههای Compose به نسخه ۳۷.۱ بهروز شد. این کار مستلزم بهروزرسانی انتقالیcompileSdkبرای همه برنامهها و کتابخانههایی است که از Compose استفاده میکنند. (I05b0f)
نسخه 1.13.0-alpha02
۲۶ اوت ۲۰۲۶
androidx.compose.animation:animation-*:1.13.0-alpha02 منتشر شد. نسخه 1.13.0-alpha02 شامل این تغییرات است.
نسخه 1.13.0-alpha01
۱۲ اوت ۲۰۲۶
androidx.compose.animation:animation-*:1.13.0-alpha01 منتشر شد. نسخه 1.13.0-alpha01 شامل این تغییرات است.
تغییرات میانای برنامهسازی کاربردی
-
EnterTransition.withبهعنوان منسوخ باDeprecationLevel.HIDDENبرای سازگاری دودویی بازیابی شد. (I71214، b/535291175) - روشهای پایه خالی قابللغو با
@EmptySuperدر سراسر Compose حاشیهنویسی شده است تا نشان دهد پیادهسازیهای لغوکننده نباید از super فراخوانی کنند. (Id407b) -
CapturedAnimatedVisibilityرا معرفی کردیم، جایگزینی برایAnimatedVisibilityکه هنگام خروج، ترکیب کودک را بلافاصله دور میاندازد و آخرین قاب پردازششده را ازطریقGraphicsLayerپویانمایی میکند. (I6c5b3) - نام سربار
rememberTransitionرا کهDeferredTransitionStateرا میپذیرد بهrememberDeferredTransitionتغییر داد تا آن را از گونههای استانداردTransitionStateمتمایز کند. (I7bb7e) -
EnterExitTransitionConfigرا برایEnterTransitionوExitTransitionعمومی کرد. (Idd5a4، b/330152398) -
Transition.CrossfadeوcreateChildTransitionاکنون پایدار هستند. EnterTransition.withبرداشته شده است (ازtogetherWithاستفاده کنید). (I38f66) -
createChildTransitionاکنون پایدار است. (Ied832, b/261422996) -
androidx.benchmarkاکنونminSdkبرابر با ۲۴ دارد. (Ic2a85) - مقدار پویانمایی فعلی در
DeferredTargetAnimationآشکار شد. (Ie4f6e، b/434659224) - جایگزین کردن
@AnimationToolingApiآزمایشی با@RestrictToAPI که تضمینهای ردیابی دقیقتری دارد. (Ia4fd1, b/524317805) -
unveilInوveilOutAPI را پایدار کردیم (I9e3a3)
رفع اشکالها
- مقداردهی اولیه بهینهسازیشده سطح فایل برای
animationمشخصههای کلاس مقدار سطح بالا بااستفاده از دریافتکنندههای پویا. (I88b86) - مقداردهی اولیه شیء همراه بهینهسازیشده
compose:animationکلاسهای مقدار (StartOffsetType،ArcMode،SlideDirection) بااستفاده از دریافتکنندههای پویا. (I4162e) - اطلاعات میانای برنامهسازی کاربردی را پاک میکند (Ia8066)
نسخه ۱.۱۲
نسخه ۱.۱۲.۱
۹ سپتامبر ۲۰۲۶
androidx.compose.animation:animation-*:1.12.1 منتشر شد. نسخه ۱.۱۲.۱ شامل این تعهدات است.
نسخه ۱.۱۲.۰
۱۲ اوت ۲۰۲۶
androidx.compose.animation:animation-*:1.12.0 منتشر شد. نسخه ۱.۱۲.۰ شامل این تعهدات است.
تغییرات مهم از ۱.۱۱.۰:
نسخه 1.12.0-rc01
۲۹ ژوئیه ۲۰۲۶
androidx.compose.animation:animation-*:1.12.0-rc01 منتشر شد. نسخه 1.12.0-rc01 شامل این تعهدات است.
نسخه 1.12.0-beta02
۱ ژوئیه ۲۰۲۶
androidx.compose.animation:animation-*:1.12.0-beta02 منتشر شد. نسخه 1.12.0-beta02 شامل این تعهدها است.
نسخه 1.12.0-beta01
۱۷ ژوئن ۲۰۲۶
androidx.compose.animation:animation-*:1.12.0-beta01 منتشر شد. نسخه 1.12.0-beta01 شامل این تعهدات است.
تغییرات میانای برنامهسازی کاربردی
- پارامتر
permitTransformDuringDeferredTransitionبهSharedContentConfigمعرفی شد تا کنترل کند که آیا عناصر همرسانیشده باید درطول فاز تعویقDeferredTransitionبهصورت دیداری با محتوی والد خود تبدیل شوند یا نه. (I4b67b) - کد «گذار» به کلاس مهرومومشده را بازسازی کردیم و
DeferredTransitionمستندات و ایمنی «میانای برنامهسازی کاربردی» را بهبود دادیم. (Iecb8f) -
inactiveElementColorبهLookaheadAnimationVisualDebugging" به androidx-main اضافه شد -
inactiveElementColorبهLookaheadAnimationVisualDebugging(I5454b، b/501193322) اضافه شد -
ExperimentalAnimatableApiگزارمان برداشته شد. (I4e670، b/500030165)
رفع اشکالها
- مشکلی در
LinkComposerبرطرف شد که میتوانست باعث شود عناصر ترکیبی هنگام نامعتبر شدن درطول ترکیب مجدد، بهجای ترکیب مجدد، از آنها صرفنظر شود. (Ie29fe)
نسخه 1.12.0-alpha03
۱۹ مه ۲۰۲۶
androidx.compose.animation:animation-*:1.12.0-alpha03 منتشر شد. نسخه 1.12.0-alpha03 شامل این تعهدات است.
تغییرات میانای برنامهسازی کاربردی
-
DeferredTargetAnimationدیگر آزمایشی نیست، لطفاً موافقت را از androidx-main بردارید - پارامتر
mutableTransformبهAnimatedVisibilityوAnimatedContentاضافه شد تا از دستکاری مستقیم و دستی دارایی (برای نمونه، برای اشارههای برگشت پیشگویانه) درطول مرحله انتقال تعویقیافته پشتیبانی کند. (I236e8) -
DeferredTargetAnimationدیگر آزمایشی نیست، لطفاً موافقت را بردارید. (I1e4ae، b/500030165) - تعداد جدید برای پشتیبانی از راهاندازها در ui-tooling (I6e198، b/478807872)
نسخه 1.12.0-alpha02
۶ مه ۲۰۲۶
androidx.compose.animation:animation-*:1.12.0-alpha02 منتشر شد. نسخه 1.12.0-alpha02 شامل این تعهدات است.
نسخه 1.12.0-alpha01
۲۲ آوریل ۲۰۲۶
androidx.compose.animation:animation-*:1.12.0-alpha01 منتشر شد. نسخه 1.12.0-alpha01 شامل این تعهدها است.
رفع اشکالها
- Compose
compileSdkبه API 37 بهروز شد. این یعنی هنگام استفاده از «نوشتن»، حداقل نسخه AGP باید ۹.۲.۰ باشد. (Id45cd، b/413674743) - پایان پویانمایی
SeekableTransitionStateقبلاز ترکیب (1bf9dc، b/410055849)
نسخه ۱.۱۱
نسخه ۱.۱۱.۴
۱ ژوئیه ۲۰۲۶
androidx.compose.animation:animation-*:1.11.4 منتشر شد. نسخه ۱.۱۱.۴ شامل این تعهدات است.
نسخه ۱.۱۱.۳
۱۷ ژوئن ۲۰۲۶
androidx.compose.animation:animation-*:1.11.3 منتشر شد. نسخه ۱.۱۱.۳ شامل این تعهدات است.
نسخه ۱.۱۱.۲
۱۹ مه ۲۰۲۶
androidx.compose.animation:animation-*:1.11.2 منتشر شد. نسخه ۱.۱۱.۲ شامل این تعهدات است.
نسخه ۱.۱۱.۱
۶ مه ۲۰۲۶
androidx.compose.animation:animation-*:1.11.1 منتشر شد. نسخه ۱.۱۱.۱ شامل این تعهدات است.
نسخه ۱.۱۱.۰
۲۲ آوریل ۲۰۲۶
androidx.compose.animation:animation-*:1.11.0 منتشر شد. نسخه ۱.۱۱.۰ شامل این تعهدات است.
تغییرات مهم از تاریخ ۱.۱۰.۰:
-
androidx.compose.animation:animation-*:1.11.0منتشر شد. این نسخه پایدار بهبودها و اصلاحات چرخه توسعه ۱.۱۱.۰ را یکپارچه میکند و بر پایداری عنصر مشترک، قابلیت اطمینان رشتهبندی، و ابزارهای جدید توسعهدهنده تمرکز دارد.
ویژگیهای جدید
- اشکالزدایی بصری برای پیشبینی: مجموعه جدیدی از قابلیتهای اشکالزدایی بصری معرفی شد که امکان تجسم اطلاعات مربوط به عناصر همرسانیشده و
Modifier.animatedBoundsرا فراهم میکند. چنین اطلاعاتی شامل این موارد میشود: محدودههای هدف، مسیر حرکت پویانمایی محدودهها، تعداد مطابقتهای یافتشده، فعال بودن انتقال، و غیره.
تغییرات میانای برنامهسازی کاربردی
- APIs جدیدی (
LookaheadAnimationVisualDebugging،CustomizedLookaheadAnimationVisualDebugging، وLookaheadAnimationVisualDebugConfig) اضافه شد تا به اشکالزدایی محدودههای پویانماییشده و پویانماییهای عنصر همرسانیشده کمک کند. (Id5575، b/390011686، b/466169919)
رفع اشکالها
- ایمنی رشته:
SeekableTransitionStateاکنون تغییرات وضعیت خارج از رشته را بهدرستی مدیریت میکند. قبلاً، اگر وضعیت بااستفاده ازSnapshot.withMutableSnapshot()در خارج از رشته واسط کاربر تغییر میکرد، انتقال بهاشتباه سعی میکرد بهروزرسانی را در خارج از رشته واسط کاربر انجام دهد. (0aba38) - عملکرد: عملکرد دسترسی به نقشه
sharedElementsبهبود یافته است. (93f57d) - گزارشدهی وضعیت:
isTransitionActiveاصلاح شد تا فقط زمانی درست گزارش دهد که پویانماییهای فعال از عناصر مشترک منطبق وجود داشته باشد. (d3426a، b/474385510) - پایداری: ریشه انتقال مشترک لازم است قبلاز پُرسمان کردن محدودهها قرار داده شود (۷۷d۵۹c) و تضمین شود که موقعیتهای
sharedElementsفقط درصورتی بهدست میآیند کهSharedTransitionLayoutپیوست شده باشد. (I2a035) - مدیریت وقفه: مدیریت وقفه در حالت گوشه زمانی که پویانمایی خروج کودک درحالیکه انتقال ولی هنوز در
AnimatedContentدرحال اجرا است، تمام میشود، اصلاح شد. (ad9b4f) - اعتبارسنجی: مدت اعتبارسنجیشده در
InfiniteRepeatableSpecبرای جلوگیری از دورههای ۰-مدت. (151b6d) - سفارشیسازی: احترام به
visibilityThresholdدرAnimationSpecسفارشی برایanimateFloatAsState. (3a1cdc)
نسخه 1.11.0-rc01
۸ آوریل ۲۰۲۶
androidx.compose.animation:animation-*:1.11.0-rc01 منتشر شد. نسخه 1.11.0-rc01 شامل این تعهدات است.
نسخه 1.11.0-beta02
۲۵ مارس ۲۰۲۶
androidx.compose.animation:animation-*:1.11.0-beta02 منتشر شد. نسخه 1.11.0-beta02 شامل این تعهدات است.
رفع اشکالها
-
SeekableTransitionStateاکنون تغییرات وضعیت خارج از رشته را بهدرستی مدیریت میکند. قبلاً، اگر وضعیت در خارج از رشته واسط کاربر بااستفاده ازSnapshot.withMutableSnapshot()تغییر میکرد، انتقال بهاشتباه سعی میکرد بهروزرسانی را در خارج از رشته واسط کاربر انجام دهد.(0aba38) - مدت زمان را در
InfiniteRepeatableSpecاعتبارسنجی کنید تا از دورههای ۰-مدت جلوگیری شود (151b6d) -
visibilityThresholdدرAnimationSpecسفارشی برایanimateFloatAsStateرعایت شود (3a1cdc) - رفع اشکال مربوط به مدیریت وقفه در حالت گوشه زمانی که پویانمایی خروج کودک درحالیکه انتقال ولی هنوز در
AnimatedContentدرحال اجرا است، تمام میشود. (ad9b4f)
نسخه 1.11.0-beta01
۱۱ مارس ۲۰۲۶
androidx.compose.animation:animation-*:1.11.0-beta01 منتشر شد. نسخه 1.11.0-beta01 شامل این تعهدات است.
رفع اشکالها
-
isTransitionActiveرا اصلاح کنید تا فقط زمانی درست گزارش کند که پویانمایی فعال از عنصر مشترک مطابقتدادهشده وجود داشته باشد (d3426a، b/474385510)
نسخه 1.11.0-alpha06
۲۵ فوریه ۲۰۲۶
androidx.compose.animation:animation-*:1.11.0-alpha06 منتشر شد. نسخه 1.11.0-alpha06 شامل این تعهدها است.
رفع اشکالها
- عملکرد دسترسی به نقشه
sharedElementsرا بهبود دهید. (93f57d)
نسخه 1.11.0-alpha05
۱۱ فوریه ۲۰۲۶
androidx.compose.animation:animation-*:1.11.0-alpha05 منتشر شد. نسخه 1.11.0-alpha05 شامل این تعهدات است.
نسخه 1.11.0-alpha04
۲۸ ژانویه ۲۰۲۶
androidx.compose.animation:animation-*:1.11.0-alpha04 منتشر شد. نسخه 1.11.0-alpha04 شامل این تعهدات است.
نسخه 1.11.0-alpha03
۱۴ ژانویه ۲۰۲۶
androidx.compose.animation:animation-*:1.11.0-alpha03 منتشر شد. نسخه 1.11.0-alpha03 شامل این تعهدات است.
ویژگیهای جدید
- مجموعه جدیدی از قابلیتهای اشکالزدایی دیداری معرفی شد که امکان دیداریسازی اطلاعات مربوط به عناصر همرسانیشده و
Modifier.animatedBoundsرا فراهم میکند. چنین اطلاعاتی شامل این موارد میشود: محدودههای هدف، مسیر حرکت پویانمایی محدودهها، تعداد مطابقتهای یافتشده، فعال بودن انتقال، و غیره.
تغییرات میانای برنامهسازی کاربردی
- api جدیدی (
LookaheadAnimationVisualDebugging،CustomizedLookaheadAnimationVisualDebugging، وLookaheadAnimationVisualDebugConfig) اضافه شد تا به اشکالزدایی محدودههای پویانماییشده و پویانماییهای عنصر همرسانیشده کمک کند. (Id5575، b/390011686، b/466169919)
رفع اشکالها
- الزامی است که ریشه انتقال همرسانیشده قبلاز پُرسمان محدودهها قرار داده شود. (77d59c)
نسخه 1.11.0-alpha02
۱۷ دسامبر ۲۰۲۵
androidx.compose.animation:animation-*:1.11.0-alpha02 منتشر شد. نسخه 1.11.0-alpha02 شامل این تعهدات است.
نسخه 1.11.0-alpha01
۳ دسامبر ۲۰۲۵
androidx.compose.animation:animation-*:1.11.0-alpha01 منتشر شد. نسخه 1.11.0-alpha01 شامل این تعهدات است.
رفع اشکالها
- فقط درصورتیکه
SharedTransitionLayoutپیوست شده باشد، موقعیتsharedElementsرا بهدست آورید (I2a035)
نسخه ۱.۱۰
نسخه ۱.۱۰.۶
۲۵ مارس ۲۰۲۶
androidx.compose.animation:animation-*:1.10.6 منتشر شد. نسخه 1.10.6 شامل این تعهدات است.
نسخه ۱.۱۰.۵
۱۱ مارس ۲۰۲۶
androidx.compose.animation:animation-*:1.10.5 منتشر شد. نسخه ۱.۱۰.۵ شامل این تعهدها است.
نسخه ۱.۱۰.۴
۲۵ فوریه ۲۰۲۶
androidx.compose.animation:animation-*:1.10.4 منتشر شد. نسخه ۱.۱۰.۴ شامل این تعهدات است.
نسخه ۱.۱۰.۳
۱۱ فوریه ۲۰۲۶
androidx.compose.animation:animation-*:1.10.3 منتشر شد. نسخه ۱.۱۰.۳ حاوی این تعهدات است.
رفع اشکالها
- خرابی ناشی از یک مورد خاص که در آن گره محتوای همرسانیشده قبلاز اینکه ریشه انتقال همرسانیشده قرار داده شود جدا میشد، برطرف شد. (121310)
نسخه ۱.۱۰.۲
۲۸ ژانویه ۲۰۲۶
androidx.compose.animation:animation-*:1.10.2 منتشر شد. نسخه ۱.۱۰.۲ شامل این تعهدات است.
نسخه ۱.۱۰.۱
۱۴ ژانویه ۲۰۲۶
androidx.compose.animation:animation-*:1.10.1 منتشر شد. نسخه ۱.۱۰.۱ شامل این تعهدات است.
نسخه ۱.۱۰.۰
۳ دسامبر ۲۰۲۵
androidx.compose.animation:animation-*:1.10.0 منتشر شد. نسخه ۱.۱۰.۰ شامل این تعهدات است.
تغییرات مهم از نسخه ۱.۹.۰:
- میاناهای برنامهسازی کاربردی انتقال همرسانیشده در نسخه ۱.۱۰ پایدار هستند
- میانای برنامهسازی کاربردی
Modifier.skipToLookaheadPositionجدید برای چیدمان درSharedTransitionScopeبرای پرش به موقعیت هدف بهجای پویانمایی تغییرات موقعیت (9a88f4) - پشتیبانی از فعال/غیرفعال کردن پویا عناصر مشترک (07680e)
- میانای برنامهسازی کاربردی جدید برای پشتیبانی از سرعت اولیه برای شروع انتقال عنصر مشترک با پرتاب (b0afe2)
-
EnterTransitionوExitTransitionجدید برای پویانمایی لایه حجاب برایAnimatedVisibilityوAnimatedContent(0f6e7c)
نسخه 1.10.0-rc01
۱۹ نوامبر ۲۰۲۵
androidx.compose.animation:animation-*:1.10.0-rc01 منتشر شد. نسخه 1.10.0-rc01 شامل این تعهدات است.
تغییرات میانای برنامهسازی کاربردی
-
unveilInوveilOutگزینه اکنون برایEnterExitTransitionsدردسترس است. این کار امکان میدهد لایه رونهادی در مقابل محتوای ورودی یا خروجی پویانمایی شود. (If26fe)
رفع اشکالها
- پشتیبانی از ردیابی مرزها ازطریق جدا کردن و دوباره متصل کردن
sharedElement(be0e9e) - نقشه عنصر همرسانیشده را برای مشاهده فعال بودن انتقال قابلمشاهده کنید. (1fc2ec)
نسخه 1.10.0-beta02
۵ نوامبر ۲۰۲۵
androidx.compose.animation:animation-*:1.10.0-beta02 منتشر شد. نسخه 1.10.0-beta02 شامل این تعهدات است.
نسخه 1.10.0-beta01
۲۲ اکتبر ۲۰۲۵
androidx.compose.animation:animation-*:1.10.0-beta01 منتشر شد. نسخه 1.10.0-beta01 شامل این تعهدات است.
تغییرات میانای برنامهسازی کاربردی
- روش کارخانه
SharedContentConfigکه لامبدایی را میگیرد که نشان میدهد عنصر همرسانیشده باید فعال باشد برداشته شده است. lookheadScopeCoordinatesAPI باLookaheadScopeبهعنوان حوزه گیرنده بهروز شده است و مختصات منبع بهعنوان پارامتر درنظر گرفته شده است. (Id1fc2، b/452416806) - میانای
BoundsTransformبهروزرسانی شده است تا باSizeTransformسازگار باشد. (Ia46f2, b/343696350) - میانای برنامهسازی کاربردی
ScaleToBoundsنامناسب برداشته شده است. لطفاً درعوض ازscaleToBoundsاستفاده کنید. (I17296)
نسخه 1.10.0-alpha05
۸ اکتبر ۲۰۲۵
androidx.compose.animation:animation-*:1.10.0-alpha05 منتشر شد. نسخه 1.10.0-alpha05 شامل این تعهدات است.
تغییرات میانای برنامهسازی کاربردی
- میاناهای برنامهسازی کاربردی انتقال همرسانیشده اکنون پایدار هستند. برای اطلاعات بیشتر، لطفاً راهنمای عنصر مشترک را ببینید. (I7167e).
نسخه 1.10.0-alpha04
۲۴ سپتامبر ۲۰۲۵
androidx.compose.animation:animation-*:1.10.0-alpha04 منتشر شد. نسخه 1.10.0-alpha04 شامل این تعهدات است.
تغییرات میانای برنامهسازی کاربردی
- نامگذاری برای
PlaceHolderSizeمیانای برنامهسازی کاربردی مرتبط بهروزرسانی شد. (I037d8، b/343696350) - میانای برنامهسازی کاربردی انتقال عنصر همرسانیشده جدید برای پشتیبانی از سرعت اولیه بهمنظور ادامه سرعت اشاره در عناصر همرسانیشده. (I91be9)
نسخه 1.10.0-alpha03
۱۰ سپتامبر ۲۰۲۵
androidx.compose.animation:animation-*:1.10.0-alpha03 منتشر شد. نسخه 1.10.0-alpha03 شامل این تعهدات است.
تغییرات میانای برنامهسازی کاربردی
-
Modifier.skipToLookaheadSizeاکنون از لامبدای فعالشده پیشفرضی استفاده میکند که فقط زمانی پرش اندازه را فعال میکند که انتقال مشترک فعال باشد، همانندModifier.skipToLookaheadPosition. (Ibe0f5، b/432485585)
نسخه 1.10.0-alpha02
۲۷ اوت ۲۰۲۵
androidx.compose.animation:animation-*:1.10.0-alpha02 منتشر شد. نسخه 1.10.0-alpha02 شامل این تعهدات است.
نسخه 1.10.0-alpha01
۱۳ اوت ۲۰۲۵
androidx.compose.animation:animation-*:1.10.0-alpha01 منتشر شد. نسخه 1.10.0-alpha01 شامل این تعهدات است.
ویژگیهای جدید
- «میانای برنامهسازی کاربردی» جدید برای فعال و غیرفعال کردن پویا عناصر مشترک که همچنین امکان محاسبه اینکه آیا ازقبل انتقال عنصر مشترک درحال انجام وجود دارد یا نه را فراهم میکند.
- «میانای برنامهسازی کاربردی» جدید برای تنظیم محدودههای هدف جایگزین وقتی عنصر مشترک هدف درطول انتقال ازبین میرود.
- میانای برنامهسازی کاربردی جدید برای دریافت
LayoutCoordinatesLookaheadScope. (I18dd4، b/409819304، b/395670637) - توصیفگر جدید
Modifier.skipToLookaheadPositionدرSharedTransitionScopeبرای ثابت کردن چیدمان در موقعیت هدف درطول انتقال مشترک. (I88734)
تغییرات میانای برنامهسازی کاربردی
- با برداشتن
clipInOverlayDuringTransitionلامبدا،renderInSharedTransitionOverlayساده شد زیرا بهندرت استفاده میشد. روش کارخانهای جدیدی برایSharedContentConfigمعرفی شد. (Id01b2) - مجموعهای از «پیشفرضها» برای عنصر مشترک، محدوده مشترک،
renderInSharedTransitionOverlayپیکربندی اضافه شد. این پیشفرضها اکنون ازطریق میاناهای برنامهسازی کاربردی عمومی دردسترس هستند. (Id23cc) - نام
ScaleToBoundsResizeMode بهscaleToBoundsتغییر کرده است (I5ac50)
رفع اشکالها
- تغییر minSdk پیشفرض از API 21 به API 23 (Ibdfca، b/380448311، b/435705964، b/435705223)
نسخه ۱.۹
نسخه ۱.۹.۵
۱۹ نوامبر ۲۰۲۵
androidx.compose.animation:animation-*:1.9.5 منتشر شد. نسخه ۱.۹.۵ شامل این تعهدات است.
نسخه ۱.۹.۴
۲۲ اکتبر ۲۰۲۵
androidx.compose.animation:animation-*:1.9.4 منتشر شد. نسخه 1.9.4 شامل این تعهدات است.
نسخه 1.9.3
۸ اکتبر ۲۰۲۵
androidx.compose.animation:animation-*:1.9.3 منتشر شد. نسخه ۱.۹.۳ حاوی این تعهدات است.
نسخه ۱.۹.۲
۲۴ سپتامبر ۲۰۲۵
androidx.compose.animation:animation-*:1.9.2 منتشر شد. نسخه 1.9.2 شامل این تعهدات است.
نسخه ۱.۹.۱
۱۰ سپتامبر ۲۰۲۵
androidx.compose.animation:animation-*:1.9.1 منتشر شد. نسخه 1.9.1 شامل این تعهدات است.
رفع اشکالها
- پویانمایی مقداردهی اولیه برای
sharedElementWithCallerManagedVisibilityرا اصلاح کنید. (fa29de)
نسخه ۱.۹.۰
۱۳ اوت ۲۰۲۵
androidx.compose.animation:animation-*:1.9.0 منتشر شد. نسخه 1.9.0 شامل این تعهدات است.
نسخه 1.9.0-rc01
۳۰ ژوئیه ۲۰۲۵
androidx.compose.animation:animation-*:1.9.0-rc01 منتشر شد. نسخه 1.9.0-rc01 شامل این تعهدات است.
نسخه 1.9.0-beta03
۱۶ ژوئیه ۲۰۲۵
androidx.compose.animation:animation-*:1.9.0-beta03 منتشر شد. نسخه 1.9.0-beta03 شامل این تعهدات است.
نسخه 1.9.0-beta02
۲ ژوئیه ۲۰۲۵
androidx.compose.animation:animation-*:1.9.0-beta02 منتشر شد. نسخه 1.9.0-beta02 شامل این تعهدات است.
نسخه 1.9.0-beta01
۱۸ ژوئن ۲۰۲۵
androidx.compose.animation:animation-*:1.9.0-beta01 منتشر شد. نسخه 1.9.0-beta01 شامل این تعهدات است.
نسخه 1.9.0-alpha04
۴ ژوئن ۲۰۲۵
androidx.compose.animation:animation-*:1.9.0-alpha04 منتشر شد. نسخه 1.9.0-alpha04 شامل این تعهدها است.
نسخه 1.9.0-alpha03
۲۰ مه ۲۰۲۵
androidx.compose.animation:animation-*:1.9.0-alpha03 منتشر شد. نسخه 1.9.0-alpha03 شامل این تعهدات است.
نسخه 1.9.0-alpha02
۷ مه ۲۰۲۵
androidx.compose.animation:animation-*:1.9.0-alpha02 منتشر شد. نسخه 1.9.0-alpha02 شامل این تعهدات است.
ویژگیهای جدید
- پشتیبانی بسیار بهبودیافته برای پیمایش یا کشیدن در عناصر مشترک. بهطور دقیقتر، وقتی عنصر مشترک انتقالی پیمایش میشود، دلتای پیمایش مستقیماً روی عنصر مشترک اعمال میشود و باعث نمیشود عناصر مشترک هدف جدید را دنبال کنند. (cacf7b)
نسخه 1.9.0-alpha01
۲۳ آوریل ۲۰۲۵
androidx.compose.animation:animation-*:1.9.0-alpha01 منتشر شد. نسخه 1.9.0-alpha01 شامل این تعهدها است.
تغییرات رفتار
- بررسیهای Lint که همراه با Compose ارسال میشوند اکنون به حداقل نسخه ۸.۸.۲ از AGP نیاز دارند. اگر نمیتوانید AGP را ارتقا دهید، میتوانید بهجای آن بااستفاده از
android.experimental.lint.version=8.8.2(یا نسخه جدیدتر) درgradle.properties، خود Lint را ارتقا دهید. برای اجرای بررسیهای lint در Compose درون IDE، به Android Studio Ladybug یا نسخههای جدیدتر نیاز است.
ویژگیهای جدید
- بهبود عملکرد پیمایش برای عناصر همرسانیشده (ea4f1f)
تغییرات میانای برنامهسازی کاربردی
- برای مصرف پروژههای منتشرشده با Kotlin 2.0، به KGP 2.0.0 یا جدیدتر نیاز است. (Idb6b5)
-
TabRowوScrollableTabRowبه نفع انواع «اصلی» و «فرعی» هرکدام منسوخ شدهاند. ردیفهای برگه «اصلی» و «فرعی» عملکرد بهتری دارند و با مشخصات دقیقتر هستند. (I918e2) -
LocalResourcesترکیب محلی به پُرسمان «منابع» اضافه شد. وقتی پیکربندی تغییر میکند،LocalResources.currentتماس را دوباره میسازد، بنابراین تماس با «میاناهای برنامهسازی کاربردی» (API) مثلstringResource()مقادیر بهروزشده را برمیگرداند (I50c13، b/274786917)
رفع اشکالها
- مطمئن شوید وقتی انتقال تمام شد عناصر مشترک از رونهاد حذف شوند (35f359)
- حذف کردن ترکیب مجدد اضافی در «گذار» (988923)
- رفع مشکل مدیریت وقفه در انتقال کودک (8aed52)
- مطمئن شوید وقتی
TransitionStateجدیدی ارائه میشود، انتقال بازنشانی میشود (57820a)
همیاری خارجی
- از نوشتن
1.8.1: پویانماییهای پایانی درSeekableTransitionStateاگر قبلاً از مدت جدید گذشته است توسط Steven Schoen. (0c832c)
نسخه ۱.۸
نسخه ۱.۸.۳
۱۸ ژوئن ۲۰۲۵
androidx.compose.animation:animation-*:1.8.3 منتشر شد. نسخه ۱.۸.۳ شامل این تعهدات است.
نسخه ۱.۸.۲
۲۰ مه ۲۰۲۵
androidx.compose.animation:animation-*:1.8.2 منتشر شد. نسخه ۱.۸.۲ شامل این تعهدات است.
نسخه ۱.۸.۱
۷ مه ۲۰۲۵
androidx.compose.animation:animation-*:1.8.1 منتشر شد. نسخه ۱.۸.۱ شامل این تعهدات است.
همیاری خارجی
- اگر پویانماییها از مدت جدید گذشته باشند، در
SeekableTransitionStateپایان مییابند. از استیون شون سپاسگزاریم! (fbcdf7)
نسخه ۱.۸.۰
۲۳ آوریل ۲۰۲۵
androidx.compose.animation:animation-*:1.8.0 منتشر شد. نسخه ۱.۸.۰ شامل این تعهدات است.
تغییرات مهم از نسخه ۱.۷.۰
- تغییرات مهم در نسخه ۱.۸.۰ در این پست وبلاگ پوشش داده شده است
- «میانای برنامهسازی کاربردی» جدید
Modifier.animateBoundsبرای پویانمایی تغییرات اندازه و موقعیت در محدوده پیشبینی. (94b939) - میاناهای برنامهسازی کاربردی نهایی برای «قابهای کلیدی با کمانها و منحنیهای اسپلاین» (89e119)
- «پیشبینی» در
LazyGridو Pager پشتیبانی میشود. این شامل تمایز بین گذر پیشنگر و گذر رویکرد در پیمایش، ترکیب/دفع مورد، و پویانمایی مورد میشود، و از گذر پیشنگر برای منبع حقیقت پیمایش و هدف پویانمایی مورد استفاده میکند. - نامگذاری پارامتر
sharedElementاز وضعیت بهsharedContentStateبرای یکپارچگی در سراسر «میاناهای برنامهسازی کاربردی عنصر همرسانیشده» بهروز شد. (9e7df5) - مجموعه
AnimatedImageVectorمیانای برنامهسازی کاربردی اکنون پایدار است.(69d7e0)
نسخه 1.8.0-rc03
۹ آوریل ۲۰۲۵
androidx.compose.animation:animation-*:1.8.0-rc03 منتشر شد. نسخه 1.8.0-rc03 شامل این تعهدها است.
نسخه 1.8.0-rc02
۲۶ مارس ۲۰۲۵
androidx.compose.animation:animation-*:1.8.0-rc02 منتشر شد. نسخه 1.8.0-rc02 شامل این تعهدات است.
نسخه 1.8.0-rc01
۱۲ مارس ۲۰۲۵
androidx.compose.animation:animation-*:1.8.0-rc01 منتشر شد. نسخه 1.8.0-rc01 شامل این تعهدات است.
رفع اشکالها
- رفع شدن مشکل علامتگذاری نادرست انتقال فرزند بهعنوان قطعشده. (3fa2ce)
نسخه 1.8.0-beta03
۲۶ فوریه ۲۰۲۵
androidx.compose.animation:animation-*:1.8.0-beta03 منتشر شد. نسخه 1.8.0-beta03 شامل این تعهدات است.
نسخه 1.8.0-beta02
۱۲ فوریه ۲۰۲۵
androidx.compose.animation:animation-*:1.8.0-beta02 منتشر شد. نسخه 1.8.0-beta02 شامل این تعهدات است.
نسخه 1.8.0-beta01
۲۹ ژانویه ۲۰۲۵
androidx.compose.animation:animation-*:1.8.0-beta01 منتشر شد. نسخه 1.8.0-beta01 شامل این تعهدها است.
نسخه 1.8.0-alpha08
۱۵ ژانویه ۲۰۲۵
androidx.compose.animation:animation-*:1.8.0-alpha08 منتشر شد. نسخه 1.8.0-alpha08 شامل این تعهدات است.
رفع اشکالها
- پویانمایی جایگذاری نادرست از
animateBoundsدرLazyGridبهدلیل بازنشانیMotionFrameOfReferencePlacementاصلاح شد. (16193b) - با هدایت کردن پرسمان ذاتی به گذر پیشنگر از ریشه پیشنگر سطح بالا، پرسمان ذاتی در
SharedTransitionLayoutاصلاح شد. (a07d12) - برچسبهای
@paramجاافتاده در سندها اضافه شد. (e5cf67)
نسخه 1.8.0-alpha07
۱۱ دسامبر ۲۰۲۴
androidx.compose.animation:animation-*:1.8.0-alpha07 منتشر شد. نسخه 1.8.0-alpha07 شامل این تعهدات است.
ویژگیهای جدید
- با متمایز کردن گذر پیشنگر از گذر رویکرد برای حفظ موارد و مصرف پیمایش، از پیشنگر در «صفحهبندی» پشتیبانی میکند. (b/371802474)
رفع اشکالها
- با ملزم کردن عنصر همرسانیشده به اینکه حداقل یکبار در جای خود پرداز شود قبلاز اینکه در رونهاد پرداز شود، خرابی نادری را که در آن عنصر همرسانیشده ترکیب میشود اما هرگز اندازهگیری/قرار داده نمیشود برطرف میکند. (b/371802474)
نسخه 1.8.0-alpha06
۱۳ نوامبر ۲۰۲۴
androidx.compose.animation:animation-*:1.8.0-alpha06 منتشر شد. نسخه 1.8.0-alpha06 شامل این تعهدات است.
تغییرات میانای برنامهسازی کاربردی
- نامگذاری پارامتر
sharedElementازstateبهsharedContentStateبهروزرسانی شد تا در سراسر میاناهای برنامهسازی کاربردی عنصر مشترک یکسان باشد. (I5694c، b/375351468) - مجموعه
AnimatedImageVectorمیانای برنامهسازی کاربردی اکنون پایدار است. (I7174b، b/261436267)
نسخه 1.8.0-alpha05
۳۰ اکتبر ۲۰۲۴
androidx.compose.animation:animation-*:1.8.0-alpha05 منتشر شد. نسخه 1.8.0-alpha05 شامل این تعهدات است.
ویژگیهای جدید
- اکنون «پیشنگاه» در
LazyGridپشتیبانی میشود. این شامل تمایز بین گذر پیشنگر و گذر رویکرد در پیمایش، ترکیب/دفع مورد، و پویانمایی مورد میشود، و از گذر پیشنگر برای منبع حقیقت پیمایش و هدف پویانمایی مورد استفاده میکند.
رفع اشکالها
- وقتی انتقال بازآفرینی میشود، وضعیتهای داخلی را برای تبدیل اندازه
AnimatedContentبهروزرسانی کنید. این کار تضمین میکند که اطلاعات اندازه هدف همیشه بهروز باشد. (b/372512085)
نسخه 1.8.0-alpha04
۱۶ اکتبر ۲۰۲۴
androidx.compose.animation:animation-*:1.8.0-alpha04 منتشر شد. نسخه 1.8.0-alpha04 شامل این تعهدات است.
رفع اشکالها
- اشکالی که باعث میشد برخیاز منحنیهای سرعت در کسرهای زمانی خاصی ازکار بیفتند برطرف شد.
- اشکالی که باعث تراز نامناسب
Modifier.animateContentSizeدر زبانهای راستبهچپ میشد برطرف شد. (Idae6b، b/372055503)
نسخه 1.8.0-alpha03
۲ اکتبر ۲۰۲۴
androidx.compose.animation:animation-*:1.8.0-alpha03 منتشر شد. نسخه 1.8.0-alpha03 شامل این تعهدها است.
تغییرات میانای برنامهسازی کاربردی
- بهروزرسانی نسخه Kotlin به ۱.۹ (I1a14c)
رفع اشکالها
- مشکلی در پویانمایی اندازه
AnimatedContentبرطرف شد. برای اطمینان از پیوستگی، پویانمایی همیشه از اندازه فعلی شروع میشود و اندازه فعلی را ردیابی میکند.
نسخه 1.8.0-alpha02
۱۸ سپتامبر ۲۰۲۴
androidx.compose.animation:animation-*:1.8.0-alpha02 منتشر شد. نسخه 1.8.0-alpha02 شامل این تعهدات است.
نسخه 1.8.0-alpha01
۴ سپتامبر ۲۰۲۴
androidx.compose.animation:animation-*:1.8.0-alpha01 منتشر شد. نسخه 1.8.0-alpha01 شامل این تعهدات است.
ویژگیهای جدید
- «میانای برنامهسازی کاربردی» جدید
Modifier.animateBoundsبرای پویانمایی تغییرات اندازه و موقعیت در محدوده پیشبینی. 94b9394
تغییرات میانای برنامهسازی کاربردی
- برداشتن پرچمهای آزمایشی در «قابهای کلیدی با کمانها و خطوط منحنی» (89e1199)
رفع اشکالها
- وقتی منطبقی پیدا نشد، از منطق
placeHolderSizeرد شوید (77c0160) - زمان پخش در
AndroidFlingSplineمحدود میشود تا از خرابیهای ناشی از افزایش غیریکنواخت زمان پخش جلوگیری شود(9d47587) - رفع اشکال
SharedTransitionScopeکه در شرایط خاصی موارد را ترسیم نمیکرد (b41077b6)
همیاری خارجی
- جلوگیری از تنظیم انتقال قابلجستجو
playTimeوقتی انتقالی درحال اجرا نیست از Steven Schoen. (c2e6e7e6)
نسخه ۱.۷
نسخه ۱.۷.۸
۱۲ فوریه ۲۰۲۵
androidx.compose.animation:animation-*:1.7.8 منتشر شد. نسخه ۱.۷.۸ شامل این تعهدات است.
نسخه ۱.۷.۷
۲۹ ژانویه ۲۰۲۵
androidx.compose.animation:animation-*:1.7.7 منتشر شد. از نسخه ۱.۷.۶ تغییری نداشته است.
۱۱ دسامبر ۲۰۲۴
androidx.compose.animation:animation-*:1.7.6 منتشر شد. نسخه ۱.۷.۶ شامل این تعهدات است.
نسخه ۱.۷.۵
۳۰ اکتبر ۲۰۲۴
androidx.compose.animation:animation-*:1.7.5 منتشر شد. نسخه ۱.۷.۵ شامل این تعهدات است.
رفع اشکالها
- اشکالی که باعث تراز نامناسب
Modifier.animateContentSizeدر زبانهای راستبهچپ میشد برطرف شد. (Idae6b، b/372055503)
نسخه ۱.۷.۴
۱۶ اکتبر ۲۰۲۴
androidx.compose.animation:animation-*:1.7.4 منتشر شد. نسخه ۱.۷.۴ شامل این تعهدات است.
نسخه ۱.۷.۳
۲ اکتبر ۲۰۲۴
androidx.compose.animation:animation-*:1.7.3 منتشر شد. نسخه ۱.۷.۳ شامل این تعهدها است.
نسخه ۱.۷.۲
۱۸ سپتامبر ۲۰۲۴
androidx.compose.animation:animation-*:1.7.2 منتشر شد. نسخه ۱.۷.۲ شامل این تعهدات است.
همیاری خارجی
- از تنظیم انتقال قابلجستجو
playTimeزمانی که هیچ انتقالی درحال اجرا نیست جلوگیری کنید. از استیون شون سپاسگزاریم! (c2e6e7e6)
نسخه ۱.۷.۱
۱۰ سپتامبر ۲۰۲۴
- هیچ تغییری در آرتیفکتهای Android ایجاد نشده است.
-desktopمصنوع برداشته شد و-jvmStubsو-linuxx64Stubsمصنوع اضافه شد. هیچکدام از این هدفها برای استفاده درنظر گرفته نشدهاند، بلکه جایگذاریهایی هستند که به تلاشهای Jetbrains Compose کمک میکنند.
نسخه ۱.۷.۰
۴ سپتامبر ۲۰۲۴
androidx.compose.animation:animation-*:1.7.0 منتشر شد.
تغییرات مهم از نسخه ۱.۶.۰
تغییرات مهم در نسخه ۱.۷.۰ در این پست وبلاگ پوشش داده شده است.
میاناهای برنامهسازی کاربردی جدید انتقال عنصر مشترک
- میاناهای برنامهسازی کاربردی جدید انتقال عنصر مشترک منتظر استفاده و بازخورد شما هستند. این APIهای آزمایشی جدید امکان برچسبگذاری چیدمانها را بهعنوان همرسانیشده در سراسر درخت چیدمان بااستفاده از اصلاحکنندههای ارائهشده فراهم میکنند و وقتی یک مجموعه محتوای همرسانیشده خارج میشود و مجموعه دیگر وارد میشود، مرزهای تغییر هموار ایجاد میکنند. (Icb0b9)
-
scaleInSharedContentToBoundsوscaleOutSharedContentToBoundsجدید برای مقیاسبندی محتوا درsharedBounds(I731c1) - Experimental
SharedTransitionScopeاکنون یک میانای کاربری است نه یک کلاس. (Iaf856) -
resizeModesجدید (ScaleToBoundsوRemeasureToBounds) برایsharedBoundsتا بین مقیاسبندی و اندازهگیری مجدد انتخاب کند. میاناهای برنامهسازی کاربردیscaleIn/OutSharedContentToBoundsقبلی اکنون نامناسب هستند. (I0d41a)
بهبودهای میاناهای برنامهسازی کاربردی موجود:
-
Modifier.animateContentSizeجدید که پارامتر اضافهای برای تراز کردن محتوای سفارشی میگیرد. (I5623a، b/269803907) -
DeferredTargetAnimationآزمایشی جدید برای پویانمایی اندازه، موقعیت، یا هر هدف دیگری که درطول نمونهسازی ناشناخته است. (I60745) SeekableTransitionStatesnapTo()را باseekTo()جایگزین میکند وsnapTo()را اضافه میکند که بلافاصله وضعیت را بدون هیچگونه پویانمایی به وضعیت مقصد تغییر میدهد.- اکنون میتوانید مقدار
periodicBias(شناور) را بهkeyframesWithSplineمنتقل کنید، این کار باعث میشود که سرعت اولیه و نهایی خط منحنی یکسان باشد. برای پویانماییهای تکرارشونده بااستفاده از خطوط منحنی مفید است. انحراف نشان میدهد که هر سرعت (اولیه و نهایی) چقدر تغییر میکند تا به تناوب برسد. (Ic1e6c, b/292114811)
میاناهای برنامهسازی کاربردی زیر پایدار شدهاند یا برداشته شدهاند:
-
AnimatedVisibilityScope.transitionاکنون یک «میانای برنامهسازی کاربردی» پایدار است. Modifier.animateEnterExit(..)نیز پایدار شده است. (I6c1d1) -
ApproachLayoutModifierNodeوModifier.approachLayoutاکنون پایدار هستند وisMeasurementApproachInProgress()وisPlacementApproachInProgress()جدید جایگزینisMeasurementApproachComplete()وisPlacementApproachComplete()قدیمی شدهاند. - اصلاحگر منسوخ
intermediateLayoutبرداشته شد. (I3e91c) -
LookaheadScopeمیانای برنامهسازی کاربردی پایدار شده است. (I21507)
نسخه 1.7.0-rc01
۲۱ اوت ۲۰۲۴
androidx.compose.animation:animation-*:1.7.0-rc01 منتشر شد. نسخه 1.7.0-rc01 شامل این تعهدات است.
نسخه 1.7.0-beta07
۷ اوت ۲۰۲۴
androidx.compose.animation:animation-*:1.7.0-beta07 منتشر شد. نسخه 1.7.0-beta07 شامل این تعهدات است.
رفع اشکالها
- رفع مشکل
SharedTransitionScopeکه در شرایط خاصی، ازجمله استفاده با «پیمایش»، عناصر رونهاد را درطول انتقال رسم نمیکرد. (Id65ab، b/347520198)
نسخه 1.7.0-beta06
۲۴ ژوئیه ۲۰۲۴
androidx.compose.animation:animation-*:1.7.0-beta06 منتشر شد. نسخه 1.7.0-beta06 شامل این تعهدات است.
رفع اشکالها
- با پاکسازی صحیح مشاهدات از
SnapshotStateObserverهنگام حذف گذار، مشکل نشت وضعیتهای گذارSeekableTransitionبرطرف شد. (b9c7182) - موارد حاشیهای که در آنها «گذار» کودک هنگام تکمیل شدن توسط ولی بهدرستی بهعنوان تکمیلشده علامتگذاری نمیشد اصلاح شد. (dc42216)
نسخه 1.7.0-beta05
۱۰ ژوئیه ۲۰۲۴
androidx.compose.animation:animation-*:1.7.0-beta05 منتشر شد. نسخه 1.7.0-beta05 شامل این تعهدات است.
رفع اشکالها
- اکنون میتوان دارایی «گذار»
totalDurationNanosرا بهدرستی درsnapshotFlowخواند.
نسخه 1.7.0-beta04
۲۶ ژوئن ۲۰۲۴
androidx.compose.animation:animation-*:1.7.0-beta04 منتشر شد. نسخه 1.7.0-beta04 حاوی این تعهدات است.
نسخه 1.7.0-beta03
۱۲ ژوئن ۲۰۲۴
androidx.compose.animation:animation-*:1.7.0-beta03 منتشر شد. نسخه 1.7.0-beta03 شامل این تعهدات است.
نسخه 1.7.0-beta02
۲۹ مه ۲۰۲۴
androidx.compose.animation:animation-*:1.7.0-beta02 منتشر شد. نسخه 1.7.0-beta02 شامل این تعهدات است.
نسخه 1.7.0-beta01
۱۴ مه ۲۰۲۴
androidx.compose.animation:animation-*:1.7.0-beta01 منتشر شد. نسخه 1.7.0-beta01 شامل این تعهدات است.
تغییرات میانای برنامهسازی کاربردی
-
resizeModesجدید (ScaleToBoundsوRemeasureToBounds) برایsharedBoundsتا بین مقیاسبندی و اندازهگیری مجدد انتخاب کند. میاناهای برنامهسازی کاربردیscaleIn/OutSharedContentToBoundsقبلی اکنون نامناسب هستند. (I0d41a)
همیاری خارجی
- Experimental
SharedTransitionScopeاکنون بهجای کلاس، یک میانای کاربری از Steven Schoen است. (Iaf856، b/338415048، b/338414702)
نسخه 1.7.0-alpha08
۱ مه ۲۰۲۴
androidx.compose.animation:animation-*:1.7.0-alpha08 منتشر شد. نسخه 1.7.0-alpha08 شامل این تعهدات است.
تغییرات میانای برنامهسازی کاربردی
-
LookaheadScopeمیانای برنامهسازی کاربردی پایدار شده است. (I21507)
همیاری خارجی
- زمان پویانمایی شروع واضح پساز
SeekableTransitionStateپویانمایی/عکس فوری توسط Steven Schoen (1ca89529)
نسخه 1.7.0-alpha07
۱۷ آوریل ۲۰۲۴
androidx.compose.animation:animation-*:1.7.0-alpha07 منتشر شد. نسخه 1.7.0-alpha07 شامل این تعهدات است.
ویژگیهای جدید
- میاناهای برنامهسازی کاربردی جدید انتقال عنصر مشترک منتظر استفاده و بازخورد شما هستند. این APIهای آزمایشی جدید امکان برچسبگذاری چیدمانها را بهعنوان همرسانیشده در سراسر درخت چیدمان بااستفاده از اصلاحکنندههای ارائهشده فراهم میکنند و وقتی یک مجموعه محتوای همرسانیشده خارج میشود و مجموعه دیگر وارد میشود، مرزهای تغییر هموار ایجاد میکنند. (Icb0b9)
-
scaleInSharedContentToBoundsوscaleOutSharedContentToBoundsجدید برای مقیاسبندی محتوا درsharedBounds(I731c1)
تغییرات میانای برنامهسازی کاربردی
-
AnimatedVisibilityScope.transitionاکنون یک «میانای برنامهسازی کاربردی» پایدار است. Modifier.animateEnterExit(..)نیز پایدار شده است. (I6c1d1) -
ApproachLayoutModifierNodeوModifier.approachLayoutاکنون پایدار هستند وisMeasurementApproachInProgress()وisPlacementApproachInProgress()جدید جایگزینisMeasurementApproachComplete()وisPlacementApproachComplete()قدیمی شدهاند. - اصلاحگر منسوخ
intermediateLayoutبرداشته شد. (I3e91c) - اکنون میتوانید مقدار
periodicBias(شناور) را بهkeyframesWithSplineمنتقل کنید، این کار باعث میشود که سرعت اولیه و نهایی خط منحنی یکسان باشد. برای پویانماییهای تکرارشونده بااستفاده از خطوط منحنی مفید است. انحراف نشان میدهد که هر سرعت (اولیه و نهایی) چقدر تغییر میکند تا به تناوب برسد. (Ic1e6c, b/292114811)
رفع اشکالها
- منحنیهای تسهیلکننده که قبلاً به ۰..۱ محدود میشدند برای حرکت بیشازحد و حرکت ناکافی اصلاح شدند (I38747)
نسخه 1.7.0-alpha06
۳ آوریل ۲۰۲۴
androidx.compose.animation:animation-*:1.7.0-alpha06 منتشر شد. نسخه 1.7.0-alpha06 شامل این تعهدها است.
ویژگیهای جدید
- پشتیبانی از پویانمایی ظاهر و ناپدید شدن مورد به
LazyColumnوLazyRowاضافه شد. قبلاً امکان افزودن اصلاحکنندهModifier.animateItemPlacement()برای پشتیبانی از پویانماییهای جایگذاری (تغییر ترتیب) وجود داشت. این اصلاحگر را منسوخ کردیم و اصلاحگر غیرآزمایشی جدیدی بهنامModifier.animateItem()معرفی کردیم که به شما امکان میدهد از هر سه نوع پویانمایی پشتیبانی کنید: ظاهر شدن (محو شدن)، ناپدید شدن (محو شدن) و مرتبسازی مجدد. (I2d7f7, b/330152398, b/150812265)
رفع اشکالها
- عملکرد «میانای برنامهسازی کاربردی»
updateTransitionبهبود یافت.
نسخه 1.7.0-alpha05
۲۰ مارس ۲۰۲۴
androidx.compose.animation:animation-*:1.7.0-alpha05 منتشر شد. نسخه 1.7.0-alpha05 شامل این تعهدات است.
تغییرات میانای برنامهسازی کاربردی
SeekableTransitionStatesnapTo()را باseekTo()جایگزین میکند وsnapTo()را اضافه میکند که بلافاصله وضعیت را بدون هیچگونه پویانمایی به وضعیت مقصد تغییر میدهد.
نسخه 1.7.0-alpha04
۶ مارس ۲۰۲۴
androidx.compose.animation:animation-*:1.7.0-alpha04 منتشر شد. نسخه 1.7.0-alpha04 شامل این تعهدها است.
تغییرات میانای برنامهسازی کاربردی
- میانای برنامهسازی کاربردی جدید
Path.reverse()برای معکوس کردن جهت مسیر (I36348)
نسخه 1.7.0-alpha03
۲۱ فوریه ۲۰۲۴
androidx.compose.animation:animation-*:1.7.0-alpha03 منتشر شد. نسخه 1.7.0-alpha03 شامل این تعهدات است.
ویژگیهای جدید
-
Modifier.animateContentSizeجدید که پارامتر اضافهای برای تراز کردن محتوای سفارشی میگیرد. (I5623a، b/269803907) -
DeferredTargetAnimationآزمایشی جدید برای پویانمایی اندازه، موقعیت، یا هر هدف دیگری که درطول نمونهسازی ناشناخته است. (I60745)
نسخه 1.7.0-alpha02
۷ فوریه ۲۰۲۴
androidx.compose.animation:animation-*:1.7.0-alpha02 منتشر شد. نسخه 1.7.0-alpha02 شامل این تعهدات است.
رفع اشکالها
- رفع مشکل سازگاری برای
KeyframesSpec. (I2bdf3, b/322214617) - رفع مشکل
Modifier.animateContentSizeکه هنگام استفاده درLazyListبهدرستی بازنشانی نمیشد. (I070512، b/322525716) - در تاریخ
KeyframesSpec،IllegalStateExceptionمشکل هنگام استفاده از مُهرهای زمان خارج از محدوده برطرف شد. (I341b8، b/322839811)
نسخه 1.7.0-alpha01
۲۴ ژانویه ۲۰۲۴
androidx.compose.animation:animation-*:1.7.0-alpha01 منتشر شد. نسخه 1.7.0-alpha01 شامل این تعهدات است.
نسخه ۱.۶
نسخه ۱.۶.۸
۱۲ ژوئن ۲۰۲۴
androidx.compose.animation:animation-*:1.6.8 منتشر شد. نسخه ۱.۶.۸ شامل این تعهدها است.
نسخه ۱.۶.۷
۱ مه ۲۰۲۴
androidx.compose.animation:animation-*:1.6.7 منتشر شد. نسخه ۱.۶.۷ شامل این تعهدات است.
نسخه ۱.۶.۶
۱۷ آوریل ۲۰۲۴
androidx.compose.animation:animation-*:1.6.6 منتشر شد. از زمان انتشار قبلی تغییری نکرده است
نسخه ۱.۶.۵
۳ آوریل ۲۰۲۴
androidx.compose.animation:animation-*:1.6.5 منتشر شد. نسخه ۱.۶.۵ شامل این تعهدات است.
نسخه ۱.۶.۴
۲۰ مارس ۲۰۲۴
androidx.compose.animation:animation-*:1.6.4 منتشر شد. نسخه ۱.۶.۴ شامل این تعهدات است.
نسخه ۱.۶.۳
۶ مارس ۲۰۲۴
androidx.compose.animation:animation-*:1.6.3 منتشر شد. نسخه ۱.۶.۳ شامل این تعهدات است.
نسخه ۱.۶.۲
۲۱ فوریه ۲۰۲۴
androidx.compose.animation:animation-*:1.6.2 منتشر شد. نسخه ۱.۶.۲ شامل این تعهدات است.
نسخه ۱.۶.۱
۷ فوریه ۲۰۲۴
androidx.compose.animation:animation-*:1.6.1 منتشر شد. نسخه ۱.۶.۱ حاوی این تعهدات است.
رفع اشکالها
- رفع مشکل سازگاری برای
KeyframesSpec. (I2bdf3, b/322214617)
نسخه ۱.۶.۰
۲۴ ژانویه ۲۰۲۴
androidx.compose.animation:animation-*:1.6.0 منتشر شد. نسخه ۱.۶.۰ حاوی این تعهدات است.
نسخه 1.6.0-rc01
۱۰ ژانویه ۲۰۲۴
androidx.compose.animation:animation-*:1.6.0-rc01 منتشر شد. نسخه 1.6.0-rc01 حاوی این تعهدات است.
نسخه 1.6.0-beta03
۱۳ دسامبر ۲۰۲۳
androidx.compose.animation:animation-*:1.6.0-beta03 منتشر شد. نسخه 1.6.0-beta03 حاوی این تعهدات است.
تغییرات میانای برنامهسازی کاربردی
-
scaleInToFitContainerوscaleOutToFitContainerبهطور موقت ازAnimatedContentTransitionScopeبرداشته شد زیرا به پیشنگاه نیاز دارند. این ویژگی زمانی دردسترس خواهد بود که پیشبینی بهطور پیشفرض روشن باشد یا در نسخههای پخش آینده با آن موافقت کنید.
نسخه 1.6.0-beta02
۲۹ نوامبر ۲۰۲۳
androidx.compose.animation:animation-*:1.6.0-beta02 منتشر شد. نسخه 1.6.0-beta02 حاوی این تعهدها است.
نسخه 1.6.0-beta01
۱۵ نوامبر ۲۰۲۳
androidx.compose.animation:animation-*:1.6.0-beta01 منتشر شد. نسخه 1.6.0-beta01 حاوی این تعهدات است.
تغییرات میانای برنامهسازی کاربردی
- نام
ExitTransition.HoldبهExitTransition.KeepUntilTransitionsFinishedتغییر کرده است تا صریحتر باشد. (I1c490) - اکنون میتوانید از
keyframesWithSplineبرای میانیابی هر مقدار N بعدی بااستفاده از تابعهای چندجملهای یکنوا استفاده کنید. این ویژگی بهویژه برای درونیابی مقادیر موقعیتی مثلOffset،IntOffset،DpOffsetمفید است. بهعنوان «میانای برنامهسازی کاربردی آزمایشی» اضافه شد.
رفع اشکالها
- پشتیبانی از رندرکننده برای «گرادیان جارویی» در
ArcLineاضافه کنید. (I4d5bb) - equals و hashcode را برای
PageSize.Fixedپیادهسازی کنید. (Ie3ede, b/300134276) - رفع مشکل سازگاری باینری با تغییر «حاشیه پنجره». (Iee695)
- لایه اصلی مطالب را برای «تراشه/دکمه Material3» بردارید زیرا ریزسنجشها نشان میدهد که بدون آن عملکرد بهتری دارد. (I55555)
نسخه 1.6.0-alpha08
۱۸ اکتبر ۲۰۲۳
androidx.compose.animation:animation-*:1.6.0-alpha08 منتشر شد. نسخه 1.6.0-alpha08 حاوی این تعهدات است.
تغییرات میانای برنامهسازی کاربردی
-
KeyframesSpecConfig#withمنسوخ شده است وKeyframesSpecConfig#usingجایگزین آن شده است که الگوی سازنده را حفظ میکند. (I1d769)
نسخه 1.6.0-alpha07
۴ اکتبر ۲۰۲۳
androidx.compose.animation:animation-*:1.6.0-alpha07 منتشر شد. نسخه 1.6.0-alpha07 شامل این تعهدات است.
تغییرات میانای برنامهسازی کاربردی
- «ردیفهای برگه ثابت» و «ردیفهای برگه پیمایشپذیر» اکنون دارای انواع «اصلی» و «ثانویه» هستند. اینها بهدرستی با رفتار رنگ و نشانگر تعریفشده در Material3 مطابقت دارند.
-
PrimaryScrollableTabRowوSecondaryScrollableTabRowاکنون وضعیت پیمایش را آشکار میکنند. (Iec8f5، b/260572337)
نسخه 1.6.0-alpha06
۲۰ سپتامبر ۲۰۲۳
androidx.compose.animation:animation-*:1.6.0-alpha06 منتشر شد. نسخه 1.6.0-alpha06 شامل این تعهدات است.
نسخه 1.6.0-alpha05
۶ سپتامبر ۲۰۲۳
androidx.compose.animation:animation-*:1.6.0-alpha05 منتشر شد. نسخه 1.6.0-alpha05 حاوی این تعهدات است.
تغییرات میانای برنامهسازی کاربردی
-
PathEasingاضافه شد تا امکان ارائه مسیر دلخواه به منحنی شتاب فراهم شود. (Idb4b9)
نسخه 1.6.0-alpha04
۲۳ اوت ۲۰۲۳
androidx.compose.animation:animation-*:1.6.0-alpha04 منتشر شد. نسخه 1.6.0-alpha04 حاوی این تعهدات است.
تغییرات میانای برنامهسازی کاربردی
-
SeekableTransitionStateرا اضافه کنید تا به توسعهدهندگان اجازه دهید پیشرفت انتقال را کنترل کنند. (I8e69d)
نسخه 1.6.0-alpha03
۹ اوت ۲۰۲۳
androidx.compose.animation:animation-*:1.6.0-alpha03 منتشر شد. نسخه 1.6.0-alpha03 شامل این تعهدات است.
تغییرات میانای برنامهسازی کاربردی
- نوع جدیدی از گذار ورود/خروج که محتوا را براساس اندازه محتوی پویانمایی درطول پویانمایی ورود و خروج مقیاسبندی میکند.
LookaheadScopeرابط و قابلیتهای ترکیبی اکنون پایدار است. (Ifb2ce)
نسخه 1.6.0-alpha02
۲۶ ژوئیه ۲۰۲۳
androidx.compose.animation:animation-*:1.6.0-alpha02 منتشر شد. نسخه 1.6.0-alpha02 شامل این تعهدات است.
تغییرات میانای برنامهسازی کاربردی
ExitTransition.Holdجدید برای نمایش محتوای خروجی درAnimatedContentتا زمانی که هر دو انتقال ورود و خروج تمام شوند. (I5984f)- حاشیهنویسیهای اضافی برای مشخص کردن ورودیهای مجاز برای عناصر ترکیبی (I51109)
نسخه 1.6.0-alpha01
۲۱ ژوئن ۲۰۲۳
androidx.compose.animation:animation-*:1.6.0-alpha01 منتشر شد. نسخه 1.6.0-alpha01 حاوی این تعهدات است.
ویژگیهای جدید
- با گزارش کردن اندازه هدف در گذر پیشنگاه،
Modifier.animateContentSizeوAnimatedVisibilityرا فعال کنید تا بهطور کامل در سیستم پیشنگاه ادغام شوند.
تغییرات میانای برنامهسازی کاربردی
- دارایی جدید در
IntrinsincMeasureScopeو پیادهسازیهای آن (برای نمونهMeasureScope) برای نشان دادن اینکه آیا مجوز اندازهگیری کنونی مجوز پیشنگر است یا نه. (I7a812)
رفع اشکالها
- تخصیصها از پویانماییهای فنری برداشته شد. (Ie9431)
- نام پارامتر مقدار برای Enum.valueOf تغییر کرد (Ia9b89)
- استثناهای بیشتری از enum valueOf (I818fe) پرتاب شد
نسخه 1.5
نسخه ۱.۵.۴
۱۸ اکتبر ۲۰۲۳
androidx.compose.animation:animation-*:1.5.4 منتشر شد. نسخه 1.5.4 شامل این تعهدات است.
نسخه ۱.۵.۳
۴ اکتبر ۲۰۲۳
androidx.compose.animation:animation-*:1.5.3 منتشر شد. این نسخه هیچ تغییری ندارد
نسخه 1.5.2
۲۷ سپتامبر ۲۰۲۳
androidx.compose.animation:animation-*:1.5.2 منتشر شد. نسخه ۱.۵.۲ شامل این تعهدات است.
نسخه 1.5.1
۶ سپتامبر ۲۰۲۳
androidx.compose.foundation:foundation-*:1.5.1 منتشر شد. نسخه 1.5.1 حاوی این تعهدات است.
رفع اشکالها
- وقتی
readOnlyدرست باشد، فیلدهای نوشتاری ثابت صفحهکلید را نشان میدهند و قابلویرایش هستند. همچنین مشکل نمایش داده نشدن صفحهکلید هنگام تغییرreadOnlyاز درست به نادرست درحالیکه تمرکز روی آن است برطرف شد. (I34a19, b/246909589)
نسخه 1.5.1
۶ سپتامبر ۲۰۲۳
androidx.compose.animation:animation-*:1.5.1 منتشر شد. نسخه 1.5.1 حاوی این تعهدات است.
نسخه ۱.۵.۰
۹ اوت ۲۰۲۳
androidx.compose.animation:animation-*:1.5.0 منتشر شد. نسخه ۱.۵.۰ حاوی این تعهدات است.
نسخه 1.5.0-rc01
۲۶ ژوئیه ۲۰۲۳
androidx.compose.animation:animation-*:1.5.0-rc01 منتشر شد. نسخه 1.5.0-rc01 شامل این تعهدات است.
رفع اشکالها
مشکلی برطرف شد که در آن فراخوانی
.valueدر نوع وضعیت ابتدایی (مثلMutableIntState) هشدار lint با اصلاح نامعتبر گزارش میکرد. اکنون بازرسی توصیه میکند به دارایی صحیح انتقال دهید. (Iba953، b/287279257)بازرسی اختیاری برای توصیه به انتقال
mutableStateOf()تماس به انواع تخصصی مربوطه برای عناصر اولیه دردسترس است. شناسه lint آنAutoboxingStateCreationاست. قبلاً، این بازرسی بهطور پیشفرض برای همه پروژهها فعال بود. برای دیدن این هشدار در ویرایشگر Android Studio و بروندادهای lint پروژه، با تعریف کردنwarning "AutoboxingStateCreation"در پیکربندیbuild.gradleیاbuild.gradle.ktsواحد خود، شدت آن را از «اطلاعاتی» به «هشدار» (یا بالاتر) تغییر دهید، همانطور که نشان داده شده است (I34f7e):android { lint { warning "AutoboxingStateCreation" } ... }
نسخه 1.5.0-beta03
۲۸ ژوئن ۲۰۲۳
androidx.compose.animation:animation-*:1.5.0-beta03 منتشر شد. نسخه 1.5.0-beta03 حاوی این تعهدات است.
نسخه 1.5.0-beta02
۷ ژوئن ۲۰۲۳
androidx.compose.animation:animation-*:1.5.0-beta02 منتشر شد. نسخه 1.5.0-beta02 شامل این تعهدات است.
نسخه 1.5.0-beta01
۲۴ مه ۲۰۲۳
androidx.compose.animation:animation-*:1.5.0-beta01 منتشر شد. نسخه 1.5.0-beta01 حاوی این تعهدات است.
تغییرات میانای برنامهسازی کاربردی
- تخصیصهای برداشتهشده در ترکیب مجدد، پویانماییهای رنگی، و
AndroidComposeView(Ib2bfa)
رفع اشکالها
- تخصیصها از پویانماییهای فنری برداشته شد (Ie9431)
نسخه 1.5.0-alpha04
۱۰ مه ۲۰۲۳
androidx.compose.animation:animation-*:1.5.0-alpha04 منتشر شد. نسخه 1.5.0-alpha04 حاوی این تعهدات است.
تغییرات میانای برنامهسازی کاربردی
- اکنون
ContentKeyدرAnimatedContentپشتیبانی میشود تا کنترل بیشتری بر زمان انتقال داشته باشید. (Ic069b)
نسخه 1.5.0-alpha03
۱۹ آوریل ۲۰۲۳
androidx.compose.animation:animation-*:1.5.0-alpha03 منتشر شد. نسخه 1.5.0-alpha03 حاوی این تعهدات است.
ویژگیهای جدید
- رفتار پیشفرض جدید برای
SubcomposeLayoutدرLookaheadScope. این ویژگی بهSubcomposeLayoutsکه جایگاه شرطی ندارند (برای نمونهTabRow،Scaffold،BoxWithConstraints، و غیره) اجازه میدهد بهخوبی با پویانماییهای پیشنگر کار کنند.
تغییرات میانای برنامهسازی کاربردی
-
intermediateMeasurePolicyپیشفرض جدید که از خطمشی اندازهگیری از گذر پیشنگر استفاده مجدد میکند بهSubcomposeLayoutزیرنوع بدون جایگاههای شرطی مثلScaffold،TabRow، وBoxWithConstraintsاجازه میدهد بهطور پیشفرض با پیشنگر کار کنند. (Id84c8) - برای ترکیب کردن گذارهای ورود و خروج، نام میانوند fun with را به
togetherWithتغییر دهید. AnimatedContentScopeجدید بهعنوان گیرنده برای محتوای لامبدا. (Ic39ae)
نسخه 1.5.0-alpha02
۵ آوریل ۲۰۲۳
androidx.compose.animation:animation-*:1.5.0-alpha02 منتشر شد. نسخه 1.5.0-alpha02 شامل این تعهدات است.
ویژگیهای جدید
- میانای برنامهسازی کاربردی آزمایشی جدید برای پشتیبانی از پیشبینی در
SubcomposeLayout. این کار بهSubcomposeLayoutاجازه میدهد درLookaheadScopeبهدرستی کار کند. بهزودی پشتیبانی بیشتری برای زیرگونههای خاصSubcomposeLayoutارائه خواهد شد.
تغییرات میانای برنامهسازی کاربردی
- «میانای برنامهسازی کاربردی» جدید
SubcomposeLayoutکه خطمشی اندازهگیری میانهای اضافی برای مدیریت منطق اندازهگیری/چیدمان درطول پویانماییهای مبتنی بر پیشبینی میگیرد. (I017d3)
نسخه 1.5.0-alpha01
۲۲ مارس ۲۰۲۳
androidx.compose.animation:animation-*:1.5.0-alpha01 منتشر شد. نسخه 1.5.0-alpha01 حاوی این تعهدات است.
تغییرات میانای برنامهسازی کاربردی
-
AnimatedContentمیانای برنامهسازی کاربردی اکنون پایدار استAnimatedContentScopeبهAnimatedContentTransitionScopeتغییر نام داده است. scaleInوscaleOutاکنون میاناهای برنامهسازی کاربردی پایدار هستند. (Iaf54e)
نسخه ۱.۴
نسخه ۱.۴.۳
۳ مه ۲۰۲۳
androidx.compose.animation:animation:1.4.3، androidx.compose.animation:animation-core:1.4.3، و androidx.compose.animation:animation-graphics:1.4.3 بدون هیچ تغییری منتشر شدهاند (فقط نسخه ارتقا یافته است).
نسخه 1.4.2
۱۹ آوریل ۲۰۲۳
androidx.compose.animation:animation:1.4.2، androidx.compose.animation:animation-core:1.4.2، و androidx.compose.animation:animation-graphics:1.4.2 بدون تغییر منتشر شدند. نسخه ۱.۴.۲ شامل این تعهدات است.
نسخه ۱.۴.۱
۵ آوریل ۲۰۲۳
androidx.compose.animation:animation:1.4.1، androidx.compose.animation:animation-core:1.4.1، و androidx.compose.animation:animation-graphics:1.4.1 بدون تغییر منتشر شدند. نسخه 1.4.1 حاوی این تعهدات است.
نسخه ۱.۴.۰
۲۲ مارس ۲۰۲۳
androidx.compose.animation:animation:1.4.0، androidx.compose.animation:animation-core:1.4.0، و androidx.compose.animation:animation-graphics:1.4.0 منتشر شدند. نسخه ۱.۴.۰ حاوی این تعهدات است.
تغییرات مهم از نسخه ۱.۳.۰
- برچسب ابزار در r
ememberInfiniteTransitionو همه توابع افزونه درInfiniteTransitionو «گذار» (برای نمونهInfiniteTransition#animateColor) پشتیبانی میشود (I56ef7)
نسخه 1.4.0-rc01
۸ مارس ۲۰۲۳
androidx.compose.animation:animation:1.4.0-rc01، androidx.compose.animation:animation-core:1.4.0-rc01، و androidx.compose.animation:animation-graphics:1.4.0-rc01 بدون تغییر منتشر شدند. نسخه 1.4.0-rc01 حاوی این تعهدات است.
نسخه 1.4.0-beta02
۲۲ فوریه ۲۰۲۳
androidx.compose.animation:animation:1.4.0-beta02، androidx.compose.animation:animation-core:1.4.0-beta02، و androidx.compose.animation:animation-graphics:1.4.0-beta02 بدون تغییر منتشر شدند. نسخه 1.4.0-beta02 شامل این تعهدات است.
نسخه 1.4.0-beta01
۸ فوریه ۲۰۲۳
androidx.compose.animation:animation:1.4.0-beta01، androidx.compose.animation:animation-core:1.4.0-beta01، و androidx.compose.animation:animation-graphics:1.4.0-beta01 بدون تغییر منتشر شدند. نسخه 1.4.0-beta01 حاوی این تعهدات است.
نسخه 1.4.0-alpha05
۲۵ ژانویه ۲۰۲۳
androidx.compose.animation:animation:1.4.0-alpha05، androidx.compose.animation:animation-core:1.4.0-alpha05، و androidx.compose.animation:animation-graphics:1.4.0-alpha05 منتشر شدند. نسخه 1.4.0-alpha05 حاوی این تعهدات است.
تغییرات
- از آخرین نسخه آلفا، تغییری در کتابخانههای پویانمایی ایجاد نشده است، فقط نسخه ارتقا یافته است
نسخه 1.4.0-alpha04
۱۱ ژانویه ۲۰۲۳
androidx.compose.animation:animation:1.4.0-alpha04، androidx.compose.animation:animation-core:1.4.0-alpha04، و androidx.compose.animation:animation-graphics:1.4.0-alpha04 منتشر شدند. نسخه 1.4.0-alpha04 حاوی این تعهدات است.
ویژگیهای جدید
- برچسب ابزار در
rememberInfiniteTransitionو همه توابع افزونه درInfiniteTransitionوTransition(برای نمونهInfiniteTransition#animateColor) پشتیبانی میشود (I56ef7)
تغییرات میانای برنامهسازی کاربردی
- میاناهای برنامهسازی کاربردی
InfiniteTransition#TransitionAnimationStateوInfiniteTransition#animationsاکنون عمومی هستند. (I36682)
نسخه 1.4.0-alpha03
۷ دسامبر ۲۰۲۲
androidx.compose.animation:animation:1.4.0-alpha03، androidx.compose.animation:animation-core:1.4.0-alpha03، و androidx.compose.animation:animation-graphics:1.4.0-alpha03 منتشر شدند. نسخه 1.4.0-alpha03 شامل این تعهدات است.
تغییرات میانای برنامهسازی کاربردی
- در آزمایشهای رابط کاربری که از قانون «نوشتن» استفاده میکنند، ادامه درطول
withFrameNanosتماس برگشتی ازسر گرفته نخواهد شد تا زمانی که همه تماسهای برگشتی چارچوب اجرا شوند. این با رفتار نوشتن در حالت عادی مطابقت دارد. بااینحال، آزمایشهایی که به رفتار قدیمی متکی هستند ممکن است ناموفق باشند. این تغییر فقط باید بر کدی که مستقیماًwithFrameNanosیاwithFrameMillisرا فرا میخواند تأثیر بگذارد و منطقی خارج از برگشتی که به آن توابع ارسال شده است داشته باشد که ممکن است نیاز باشد به داخل برگشتیها منتقل شود. تغییرات آزمایش پویانمایی را در این CL برای نمونهها ببینید. - پارامتر اختیاری
onPerformTraversals: (Long) -> Unitبه سازندهTestMonotonicFrameClockو تابع کارخانهای اضافه شد تا کد پسازwithFrameNanosبرگشتپذیرها اما قبلاز ازسرگیری روتینهای همزمان تماسگیرندگان اجرا شود. (Idb413، b/254115946، b/222093277، b/255802670) - پارامتر جدید در
AnimatedContentبرای برچسب ابزار (Iebe2d)
نسخه 1.4.0-alpha02
۹ نوامبر ۲۰۲۲
androidx.compose.animation:animation:1.4.0-alpha02، androidx.compose.animation:animation-core:1.4.0-alpha02، و androidx.compose.animation:animation-graphics:1.4.0-alpha02 منتشر شدند. نسخه 1.4.0-alpha02 شامل این تعهدات است.
تغییرات میانای برنامهسازی کاربردی
-
ToolingStateرا اضافه کنید تا ابزارها بتوانند وضعیتهای داخلی «ترکیبشدنی» را تغییر دهند (Ie6614)
نسخه 1.4.0-alpha01
۲۴ اکتبر ۲۰۲۲
androidx.compose.animation:animation:1.4.0-alpha01، androidx.compose.animation:animation-core:1.4.0-alpha01، و androidx.compose.animation:animation-graphics:1.4.0-alpha01 منتشر شدند. نسخه 1.4.0-alpha01 شامل این تعهدات است.
رفع اشکالها
- پویانمایی وقفه نادرست را در AnimatedContent (b/238662479) اصلاح کنید
نسخه ۱.۳
نسخه ۱.۳.۳
۱۱ ژانویه ۲۰۲۳
androidx.compose.animation:animation:1.3.3، androidx.compose.animation:animation-core:1.3.3، و androidx.compose.animation:animation-graphics:1.3.3 منتشر شدند. نسخه ۱.۳.۳ حاوی این تعهدات است.
- از نسخه ۱.۳.۲ تغییری نکرده است.
نسخه ۱.۳.۲
۷ دسامبر ۲۰۲۲
androidx.compose.animation:animation:1.3.2، androidx.compose.animation:animation-core:1.3.2، و androidx.compose.animation:animation-graphics:1.3.2 منتشر شدند. نسخه ۱.۳.۲ حاوی این تعهدات است.
رفع اشکالها
- برای پشتیبانی از androidx.compose.ui 1.3.2 بهروزرسانی شد
نسخه ۱.۳.۱
۹ نوامبر ۲۰۲۲
androidx.compose.animation:animation:1.3.1، androidx.compose.animation:animation-core:1.3.1، و androidx.compose.animation:animation-graphics:1.3.1 منتشر شدند. نسخه 1.3.1 شامل این تعهدات است.
نسخه ۱.۳.۰
۲۴ اکتبر ۲۰۲۲
androidx.compose.animation:animation:1.3.0، androidx.compose.animation:animation-core:1.3.0، و androidx.compose.animation:animation-graphics:1.3.0 منتشر شدند. نسخه ۱.۳.۰ حاوی این تعهدات است.
تغییرات مهم از نسخه ۱.۲.۰
- مجموعه جدیدی از توابع تسهیلکننده پایدار شده است
نسخه 1.3.0-rc01
۵ اکتبر ۲۰۲۲
androidx.compose.animation:animation:1.3.0-rc01، androidx.compose.animation:animation-core:1.3.0-rc01، و androidx.compose.animation:animation-graphics:1.3.0-rc01 منتشر شدند. نسخه 1.3.0-rc01 حاوی این تعهدات است.
نسخه 1.3.0-beta03
۲۱ سپتامبر ۲۰۲۲
androidx.compose.animation:animation:1.3.0-beta03، androidx.compose.animation:animation-core:1.3.0-beta03، و androidx.compose.animation:animation-graphics:1.3.0-beta03 منتشر شدند. نسخه 1.3.0-beta03 شامل این تعهدات است.
- از نسخه 1.3.0-beta02 تغییری نداشته است.
نسخه 1.3.0-beta02
۷ سپتامبر ۲۰۲۲
androidx.compose.animation:animation:1.3.0-beta02، androidx.compose.animation:animation-core:1.3.0-beta02، و androidx.compose.animation:animation-graphics:1.3.0-beta02 منتشر شدند. نسخه 1.3.0-beta02 شامل این تعهدات است.
- Kotlin.experimental از گزینههای کامپایلر برداشته شد زیرا منسوخ شده است
نسخه 1.3.0-beta01
۲۴ اوت ۲۰۲۲
androidx.compose.animation:animation:1.3.0-beta01، androidx.compose.animation:animation-core:1.3.0-beta01، و androidx.compose.animation:animation-graphics:1.3.0-beta01 منتشر شدند. نسخه 1.3.0-beta01 حاوی این تعهدات است.
نسخه 1.3.0-alpha03
۱۰ اوت ۲۰۲۲
androidx.compose.animation:animation:1.3.0-alpha03، androidx.compose.animation:animation-core:1.3.0-alpha03، و androidx.compose.animation:animation-graphics:1.3.0-alpha03 منتشر شدند. نسخه 1.3.0-alpha03 شامل این تعهدات است.
تغییرات میانای برنامهسازی کاربردی
- پارامتر جدید در
Crossfade،animateAsState، وAnimatableبرای برچسب ابزار (Iac08a) - تابع
atFractionبرای تعریف قابهای کلیدی در یک کسر بهجای یک مدت زمان خاص اضافه شد. (I20c76، b/232059455)
نسخه 1.3.0-alpha02
۲۷ ژوئیه ۲۰۲۲
androidx.compose.animation:animation:1.3.0-alpha02، androidx.compose.animation:animation-core:1.3.0-alpha02، و androidx.compose.animation:animation-graphics:1.3.0-alpha02 منتشر شدند. نسخه 1.3.0-alpha02 شامل این تعهدها است.
نسخه 1.3.0-alpha01
۲۹ ژوئن ۲۰۲۲
androidx.compose.animation:animation:1.3.0-alpha01، androidx.compose.animation:animation-core:1.3.0-alpha01، و androidx.compose.animation:animation-graphics:1.3.0-alpha01 منتشر شدند. نسخه 1.3.0-alpha01 حاوی این تعهدات است.
تغییرات میانای برنامهسازی کاربردی
-
LookaheadLayoutجدید که از گذر پیشنگر قبلاز میزان/چیدمان واقعی پشتیبانی میکند. این کار امکان میدهد چیدمان هنگام تغییر ازقبل محاسبه شود و درعینحال به چیدمان/واحد اندازهگیری پساز پیشنگاه اجازه میدهد از اندازه/موقعیت ازپیش محاسبهشده برای پویانمایی اندازه و موقعیتها بهسمت هدف استفاده کند. SubcomposeLayoutsهنوز پشتیبانی نمیشود، اما در نسخه پخش آتی پشتیبانی خواهد شد. (I477f5)
نسخه ۱.۲
نسخه ۱.۲.۱
۱۰ اوت ۲۰۲۲
androidx.compose.animation:animation:1.2.1، androidx.compose.animation:animation-core:1.2.1، و androidx.compose.animation:animation-graphics:1.2.1 منتشر شدند. نسخه ۱.۲.۱ حاوی این تعهدات است.
نسخه ۱.۲.۰
۲۷ ژوئیه ۲۰۲۲
androidx.compose.animation:animation:1.2.0، androidx.compose.animation:animation-core:1.2.0، و androidx.compose.animation:animation-graphics:1.2.0 منتشر شدند. نسخه ۱.۲.۰ حاوی این تعهدها است.
تغییرات مهم از نسخه ۱.۱.۰
- «مقیاس مدت پویانمایی» در تنظیمات «گزینههای توسعهدهنده» اکنون در «پویانمایی Compose» پشتیبانی میشود.
- مجموعه بزرگی از منحنیهای جدید آزمایشی برای آسانسازی.
-
AnimatedImageVectorاکنون ازrepeatCountوrepeatModeپشتیبانی میکند
نسخه 1.2.0-rc03
۲۹ ژوئن ۲۰۲۲
androidx.compose.animation:animation:1.2.0-rc03، androidx.compose.animation:animation-core:1.2.0-rc03، و androidx.compose.animation:animation-graphics:1.2.0-rc03 منتشر شدند. نسخه 1.2.0-rc03 حاوی این تعهدات است.
- از نسخه 1.2.0-rc02 تغییری نکرده است.
نسخه 1.2.0-rc02
۲۲ ژوئن ۲۰۲۲
androidx.compose.animation:animation:1.2.0-rc02، androidx.compose.animation:animation-core:1.2.0-rc02، و androidx.compose.animation:animation-graphics:1.2.0-rc02 منتشر شدند. نسخه 1.2.0-rc02 حاوی این تعهدات است.
رفع اشکالها
- گزارمان
ExperimentalEasingApiدر «توابع تسهیل» (Ied441) برداشته شد
نسخه 1.2.0-rc01
۱۵ ژوئن ۲۰۲۲
androidx.compose.animation:animation:1.2.0-rc01، androidx.compose.animation:animation-core:1.2.0-rc01، و androidx.compose.animation:animation-graphics:1.2.0-rc01 منتشر شدند. نسخه 1.2.0-rc01 حاوی این تعهدات است.
تغییرات میانای برنامهسازی کاربردی
- میاناهای کتابخانههای Compose اکنون بااستفاده از روشهای میانای پیشفرض jdk8 ساخته میشوند (I5bcf1)
نسخه 1.2.0-beta03
۱ ژوئن ۲۰۲۲
androidx.compose.animation:animation:1.2.0-beta03، androidx.compose.animation:animation-core:1.2.0-beta03، و androidx.compose.animation:animation-graphics:1.2.0-beta03 منتشر شدند. نسخه 1.2.0-beta03 حاوی این تعهدات است.
تغییرات میانای برنامهسازی کاربردی
- «منحنیهای آسانسازی آزمایشی» برای «پویانماییها» اضافه شد (I64a38)
نسخه 1.2.0-beta02
۱۸ مه ۲۰۲۲
androidx.compose.animation:animation:1.2.0-beta02، androidx.compose.animation:animation-core:1.2.0-beta02، و androidx.compose.animation:animation-graphics:1.2.0-beta02 منتشر شدند. نسخه 1.2.0-beta02 حاوی این تعهدات است.
نسخه 1.2.0-beta01
۱۱ مه ۲۰۲۲
androidx.compose.animation:animation:1.2.0-beta01، androidx.compose.animation:animation-core:1.2.0-beta01، و androidx.compose.animation:animation-graphics:1.2.0-beta01 منتشر شدند. نسخه 1.2.0-beta01 حاوی این تعهدها است.
- این اولین نسخه بتای ۱.۲ است! از آخرین نسخه آلفا تغییری ایجاد نشده است.
نسخه 1.2.0-alpha08
۲۰ آوریل ۲۰۲۲
androidx.compose.animation:animation:1.2.0-alpha08، androidx.compose.animation:animation-core:1.2.0-alpha08، و androidx.compose.animation:animation-graphics:1.2.0-alpha08 منتشر شدند. نسخه 1.2.0-alpha08 حاوی این تعهدات است.
نسخه 1.2.0-alpha07
۶ آوریل ۲۰۲۲
androidx.compose.animation:animation:1.2.0-alpha07، androidx.compose.animation:animation-core:1.2.0-alpha07، و androidx.compose.animation:animation-graphics:1.2.0-alpha07 منتشر شدند. نسخه 1.2.0-alpha07 حاوی این تعهدات است.
تغییرات میانای برنامهسازی کاربردی
-
AnimatedImageVectorاکنون ازrepeatCountوrepeatModeپشتیبانی میکند (Ia3e75، b/199304067)
نسخه 1.2.0-alpha06
۲۳ مارس ۲۰۲۲
androidx.compose.animation:animation:1.2.0-alpha06، androidx.compose.animation:animation-core:1.2.0-alpha06، و androidx.compose.animation:animation-graphics:1.2.0-alpha06 منتشر شدند. نسخه 1.2.0-alpha06 شامل این تعهدات است.
تغییرات میانای برنامهسازی کاربردی
- تجزیه بهروزشده داراها برداری برای پشتیبانی از قرینهسازی خودکار برای برگرداندن محتوای
VectorPainterدرصورتیکه جهت چیدمان کنونی راستبهچپ باشد. (I79cd9, b/185760237)
رفع اشکالها
- «میاناهای برنامهسازی کاربردی» گرافیک برداری بهروزرسانی شد تا بهجای
@UiComposable(I942bc) از گزارمان ترکیبی مناسب@VectorComposableاستفاده کند
نسخه 1.2.0-alpha05
۹ مارس ۲۰۲۲
androidx.compose.animation:animation:1.2.0-alpha05، androidx.compose.animation:animation-core:1.2.0-alpha05، و androidx.compose.animation:animation-graphics:1.2.0-alpha05 منتشر شدند. نسخه 1.2.0-alpha05 حاوی این تعهدات است.
تغییرات میانای برنامهسازی کاربردی
- هورا! پویانمایی «ترکیب» اکنون از تنظیم «مقیاس مدت زمان پویانمایی» در «گزینههای توسعهدهندگان» پشتیبانی میکند. (I5a4fc, b/161675988)
نسخه 1.2.0-alpha04
۲۳ فوریه ۲۰۲۲
androidx.compose.animation:animation:1.2.0-alpha04، androidx.compose.animation:animation-core:1.2.0-alpha04، و androidx.compose.animation:animation-graphics:1.2.0-alpha04 منتشر شدند. نسخه 1.2.0-alpha04 حاوی این تعهدات است.
نسخه 1.2.0-alpha03
۹ فوریه ۲۰۲۲
androidx.compose.animation:animation:1.2.0-alpha03، androidx.compose.animation:animation-core:1.2.0-alpha03، و androidx.compose.animation:animation-graphics:1.2.0-alpha03 منتشر شدند. نسخه 1.2.0-alpha03 شامل این تعهدات است.
نسخه 1.2.0-alpha02
۲۶ ژانویه ۲۰۲۲
androidx.compose.animation:animation:1.2.0-alpha02، androidx.compose.animation:animation-core:1.2.0-alpha02، و androidx.compose.animation:animation-graphics:1.2.0-alpha02 منتشر شدند. نسخه 1.2.0-alpha02 شامل این تعهدات است.
نسخه 1.2.0-alpha01
۱۲ ژانویه ۲۰۲۲
androidx.compose.animation:animation:1.2.0-alpha01، androidx.compose.animation:animation-core:1.2.0-alpha01، و androidx.compose.animation:animation-graphics:1.2.0-alpha01 منتشر شدند. نسخه 1.2.0-alpha01 شامل این تعهدات است.
تغییرات میانای برنامهسازی کاربردی
- برای بار کردن فایل منبع
<animated-vector>، بهجایanimatedVectorResourceازAnimatedImageVector.animatedVectorResourceاستفاده کنید.- برای پرداز کردن
AnimatedImageVector، بهجایAnimatedImageVector#painterForازrememberAnimatedVectorResourceاستفاده کنید. (I9c300)
- برای پرداز کردن
رفع اشکالها
- روشهای toString را به Animatable و AnimationResult اضافه کنید. (Icd3a6)
بهروزرسانیهای وابستگی
- اکنون به Kotlin
1.6.10بستگی دارد.
نسخه ۱.۱
نسخه ۱.۱.۱
۲۳ فوریه ۲۰۲۲
androidx.compose.animation:animation:1.1.1، androidx.compose.animation:animation-core:1.1.1، و androidx.compose.animation:animation-graphics:1.1.1 منتشر شدند. نسخه ۱.۱.۱ حاوی این تعهدات است.
رفع اشکالها
- رفع اشکال
NullPointerExceptionدرandroidx.compose.ui.platform.RenderNodeLayer.updateDisplayList(aosp/1947059، b/206677462) - رفع خرابی ناشی از محتوای بریدهدان هنگام خواندن از بریدهدان در Android. (I06020, b/197769306)
- رفع مشکل راستبهچپ در
LazyVerticalGrid(aosp/1931080، b/207510535)
نسخه ۱.۱.۰
۹ فوریه ۲۰۲۲
androidx.compose.animation:animation:1.1.0، androidx.compose.animation:animation-core:1.1.0، و androidx.compose.animation:animation-graphics:1.1.0 منتشر شدند. نسخه ۱.۱.۰ حاوی این تعهدات است.
تغییرات مهم از نسخه ۱.۰.۰
- پشتیبانی پایدار از جلوه پیمایش اضافی در Android 12
- بهبودهایی در اندازه هدف لمسی
- توجه داشته باشید که درخصوص «نوشتن ۱.۰»، عناصر Material فضای چیدمان خود را گسترش خواهند داد تا با دستورالعملهای دسترسپذیری Material برای اندازه هدف لمسی مطابقت داشته باشند. برای مثال، هدف لمسی «دکمه» به حداقل اندازه ۴۸×۴۸ پیکسل مستقل از تراکم گسترش خواهد یافت، حتی اگر اندازه «دکمه» را کوچکتر تنظیم کنید. این کار باعث میشود Compose Material با رفتار یکسان «عناصر طراحی سهبعدی» هماهنگ شود و درصورت ترکیب کردن «نماها» و Compose، رفتار یکسانی ارائه دهد. این تغییر همچنین تضمین میکند که وقتی میانای کاربر خود را بااستفاده از عناصر Compose Material ایجاد میکنید، حداقل الزامات دسترسیپذیری هدف لمسی برآورده شود.
- پشتیبانی پایدار برای ریل پیمایش
- تعدادی از میاناهای برنامهسازی کاربردی آزمایشی قبلی را به پایدار ارتقا میدهد
- پشتیبانی از نسخههای جدیدتر Kotlin
نسخه 1.1.0-rc03
۲۶ ژانویه ۲۰۲۲
androidx.compose.animation:animation:1.1.0-rc03، androidx.compose.animation:animation-core:1.1.0-rc03، و androidx.compose.animation:animation-graphics:1.1.0-rc03 منتشر شدند. نسخه 1.1.0-rc03 حاوی این تعهدات است.
رفع اشکالها
- بهروزرسانیشده برای پشتیبانی از Compose Material نسخه 1.1.0-rc03
نسخه 1.1.0-rc01
۱۵ دسامبر ۲۰۲۱
androidx.compose.animation:animation:1.1.0-rc01 و androidx.compose.animation:animation-core:1.1.0-rc01 منتشر شدند. نسخه 1.1.0-rc01 حاوی این تعهدات است.
تغییرات میانای برنامهسازی کاربردی
- برای بار کردن فایل منبع
<animated-vector>، بهجایanimatedVectorResourceازAnimatedImageVector.animatedVectorResourceاستفاده کنید.- برای پرداز کردن
AnimatedImageVector، بهجایAnimatedImageVector#painterForازrememberAnimatedVectorResourceاستفاده کنید. (I9c300)
- برای پرداز کردن
نسخه 1.1.0-beta04
۱ دسامبر ۲۰۲۱
androidx.compose.animation:animation:1.1.0-beta04، androidx.compose.animation:animation-core:1.1.0-beta04، و androidx.compose.animation:animation-graphics:1.1.0-beta04 منتشر شدند. نسخه 1.1.0-beta04 حاوی این تعهدات است.
ویژگیهای جدید
- بهروزرسانیشده برای سازگاری با Kotlin
1.6.0
نسخه 1.1.0-beta03
۱۷ نوامبر ۲۰۲۱
androidx.compose.animation:animation:1.1.0-beta03، androidx.compose.animation:animation-core:1.1.0-beta03، و androidx.compose.animation:animation-graphics:1.1.0-beta03 منتشر شدند. نسخه 1.1.0-beta03 حاوی این تعهدات است.
تغییرات میانای برنامهسازی کاربردی
- توصیفگر جدید Modifier.onPlaced اضافه شد تا امکان مشاهده تغییر جای آگهی فراهم شود. بنابراین، براساس تغییر جایگاه مشاهدهشده، میتوان تغییرات بیشتری در انحراف اصلاحکننده کودک ایجاد کرد. (I558fd)
پشتیبانی جدید برای contentKey در «محو کردن». سیستم پویانمایی از ContentKey برای بررسی برابری استفاده خواهد کرد. بنابراین، با مشخص کردن contentKey مناسب برای حالتهای مختلف، میتوان به تفاوت سفارشی در حالتها دست یافت.
از ContentKey بهعنوان کلید ذخیره و بازیابی محتوا نیز استفاده خواهد شد. (I2e055, b/197907070)
نسخه 1.1.0-beta02
۳ نوامبر ۲۰۲۱
androidx.compose.animation:animation:1.1.0-beta02، androidx.compose.animation:animation-core:1.1.0-beta02، و androidx.compose.animation:animation-graphics:1.1.0-beta02 منتشر شدند. نسخه 1.1.0-beta02 شامل این تعهدات است.
رفع اشکالها
- «میاناهای برنامهسازی کاربردی» جدید پویانمایی برای پشتیبانی از ابزارها. بهطور خاص، اینها به ابزارها اجازه میدهند پویانماییها و پیکربندیهای آنها را در «گذرها» بازرسی کنند. (I4116e)
نسخه 1.1.0-beta01
۲۷ اکتبر ۲۰۲۱
androidx.compose.animation:animation:1.1.0-beta01، androidx.compose.animation:animation-core:1.1.0-beta01، و androidx.compose.animation:animation-graphics:1.1.0-beta01 منتشر شدند. نسخه 1.1.0-beta01 حاوی این تعهدات است.
تغییرات میانای برنامهسازی کاربردی
- «میاناهای برنامهسازی کاربردی» جدید پویانمایی برای پشتیبانی از ابزارها. بهطور خاص، اینها به ابزارها اجازه میدهند پویانماییها و پیکربندیهای آنها را در «گذرها» بازرسی کنند. (I4116e)
نسخه 1.1.0-alpha06
۱۳ اکتبر ۲۰۲۱
androidx.compose.animation:animation:1.1.0-alpha06، androidx.compose.animation:animation-core:1.1.0-alpha06، و androidx.compose.animation:animation-graphics:1.1.0-alpha06 منتشر شدند. نسخه 1.1.0-alpha06 شامل این تعهدات است.
نسخه 1.1.0-alpha05
۲۹ سپتامبر ۲۰۲۱
androidx.compose.animation:animation:1.1.0-alpha05، androidx.compose.animation:animation-core:1.1.0-alpha05، و androidx.compose.animation:animation-graphics:1.1.0-alpha05 منتشر شدند. نسخه 1.1.0-alpha05 حاوی این تعهدات است.
تغییرات میانای برنامهسازی کاربردی
EnterTransition،ExitTransition، و برخیاز میاناهای برنامهسازی کاربردیAnimatedVisibilityپایدار شدهاند. MutableTransitionState.isIdleنیز دیگر آزمایشی نیست. (I5072d)تغییرات مخرب: لامبداها در کارخانههای Enter/ExitTransition به آخرین موقعیت در فهرست پارامتر منتقل شدهاند. (I5072d)
نسخه 1.1.0-alpha04
۱۵ سپتامبر ۲۰۲۱
androidx.compose.animation:animation:1.1.0-alpha04، androidx.compose.animation:animation-core:1.1.0-alpha04، و androidx.compose.animation:animation-graphics:1.1.0-alpha04 منتشر شدند. نسخه 1.1.0-alpha04 شامل این تعهدات است.
نسخه 1.1.0-alpha03
۱ سپتامبر ۲۰۲۱
androidx.compose.animation:animation:1.1.0-alpha03، androidx.compose.animation:animation-core:1.1.0-alpha03، و androidx.compose.animation:animation-graphics:1.1.0-alpha03 منتشر شدند. نسخه 1.1.0-alpha03 حاوی این تعهدات است.
ویژگیهای جدید
- Compose
1.1.0-alpha03بهروزرسانی شد تا به Kotlin1.5.30وابسته باشد. (I74545)
نسخه 1.1.0-alpha02
۱۸ اوت ۲۰۲۱
androidx.compose.animation:animation:1.1.0-alpha02، androidx.compose.animation:animation-core:1.1.0-alpha02، و androidx.compose.animation:animation-graphics:1.1.0-alpha02 منتشر شدند. نسخه 1.1.0-alpha02 شامل این تعهدها است.
تغییرات میانای برنامهسازی کاربردی
- اکنون StartOffset در repeatable و infiniteRepeatable پشتیبانی میشود، بهعنوان روشی برای بهتأخیر انداختن زمان شروع یا سریع بهجلو بردن پویانمایی قبلاز شروع پویانمایی. این مقدار کاهش شروع تکرار نخواهد شد (Ic679f، b/195079908)
- انتقال جدید ورود/خروج برای مقیاس. میتواند در ترکیب با انواع دیگر «گذار ورود/خروج» استفاده شود. (I372da, b/191325593)
نسخه 1.1.0-alpha01
۴ اوت ۲۰۲۱
androidx.compose.animation:animation:1.1.0-alpha01، androidx.compose.animation:animation-core:1.1.0-alpha01، و androidx.compose.animation:animation-graphics:1.1.0-alpha01 منتشر شدند. نسخه 1.1.0-alpha01 شامل این تعهدات است.
تغییرات میانای برنامهسازی کاربردی
-
AnimatedImageVectorو میاناهای برنامهسازی کاربردی مربوطه اکنون در واحد جدیدandroidx.compose.animation:animation-graphicsقرار دارند. (I60873)
رفع اشکالها
-
InfiniteAnimationPolicyبه :compose:ui (I5eb09، b/160602714) منتقل شد
نسخه 1.0
نسخه ۱.۰.۵
۳ نوامبر ۲۰۲۱
androidx.compose.animation:animation:1.0.5 و androidx.compose.animation:animation-core:1.0.5 منتشر شدند. نسخه ۱.۰.۵ حاوی این تعهدات است.
رفع اشکالها
- ازکارافتادگی ردیابی نمونههای derivedStateOf برطرف شد. (aosp/1792247)
نسخه ۱.۰.۴
۱۳ اکتبر ۲۰۲۱
androidx.compose.animation:animation:1.0.4 و androidx.compose.animation:animation-core:1.0.4 منتشر شدند. نسخه 1.0.4 شامل این تعهدات است.
بهروزرسانیهای وابستگی
- بهروزرسانی شد تا به Kotlin
1.5.31وابسته باشد
نسخه ۱.۰.۳
۲۹ سپتامبر ۲۰۲۱
androidx.compose.animation:animation:1.0.3 و androidx.compose.animation:animation-core:1.0.3 منتشر شدند. نسخه 1.0.3 شامل این تعهدات است.
بهروزرسانیهای وابستگی
- بهروزرسانی شد تا به Kotlin
1.5.30وابسته باشد
نسخه ۱.۰.۲
۱ سپتامبر ۲۰۲۱
androidx.compose.animation:animation:1.0.2 و androidx.compose.animation:animation-core:1.0.2 منتشر شدند. نسخه 1.0.2 حاوی این تعهدات است.
برای پشتیبانی از نسخه 1.0.2 «نوشتن» بهروز شد. Compose 1.0.2 همچنان با Kotlin 1.5.21 سازگار است.
نسخه ۱.۰.۱
۴ اوت ۲۰۲۱
androidx.compose.animation:animation:1.0.1 و androidx.compose.animation:animation-core:1.0.1 منتشر شدند. نسخه 1.0.1 شامل این تعهدات است.
بهروزرسانیهای وابستگی
- بهروزرسانی شد تا به Kotlin
1.5.21وابسته باشد.
نسخه ۱.۰.۰
۲۸ ژوئیه ۲۰۲۱
androidx.compose.animation:animation:1.0.0 و androidx.compose.animation:animation-core:1.0.0 منتشر شدند. نسخه ۱.۰.۰ حاوی این تعهدات است.
ویژگیهای اصلی نسخه 1.0.0
این اولین نسخه پایدار «نگارش» است. برای جزئیات بیشتر، لطفاً وبلاگ رسمی «نسخه آمادهسازی» را ببینید!
مشکلات شناختهشده
اگر از Android Studio Bumblebee Canary 4 یا AGP
7.1.0-alpha04/7.1.0-alpha05استفاده میکنید، ممکن است با خرابی زیر مواجه شوید:java.lang.AbstractMethodError: abstract method "void androidx.lifecycle.DefaultLifecycleObserver.onCreate(androidx.lifecycle.LifecycleOwner)"برای رفع این مشکل، بهطور موقت minSdkVersion را در فایل
build.gradleبه ۲۴ یا بالاتر افزایش دهید. این مشکل در نسخه بعدی Android Studio Bumblebee و AGP7.1برطرف خواهد شد. (b/194289155)
نسخه 1.0.0-rc02
۱۴ ژوئیه ۲۰۲۱
androidx.compose.animation:animation:1.0.0-rc02 و androidx.compose.animation:animation-core:1.0.0-rc02 منتشر شدند. نسخه 1.0.0-rc02 حاوی این تعهدها است.
نسخه 1.0.0-rc01
۱ ژوئیه ۲۰۲۱
androidx.compose.animation:animation:1.0.0-rc01 و androidx.compose.animation:animation-core:1.0.0-rc01 منتشر شدند. نسخه 1.0.0-rc01 حاوی این تعهدات است.
رفع اشکالها
-
InfiniteAnimationPolicyبهandroidx.compose.ui:uiمنتقل شد (I5eb09، b/160602714)
نسخه 1.0.0-beta09
۱۶ ژوئن ۲۰۲۱
androidx.compose.animation:animation:1.0.0-beta09 و androidx.compose.animation:animation-core:1.0.0-beta09 منتشر شدند. نسخه 1.0.0-beta09 شامل این تعهدات است.
تغییرات میانای برنامهسازی کاربردی
- «عنصر ترکیبی»
AnimatedContentجدید. این دستگاه محتوای خود را بااستفاده ازContentTransformسفارشیشدنی مدیریت میکند و با ورود محتوای هدف جدید و خروج محتوای اولیه، محتوای خود را تغییر میدهد. از ترکیبهای مختلف انتقال ورود و خروج میتوان برای ایجاد ظاهر و احساس سفارشی استفاده کرد. بهعنوان بخشی از تبدیل محتوا،AnimatedContentاندازه آن بهطور خودکار متحرک میشود تا با محتوای ورودی مطابقت داشته باشد. (I2c3df) -
ManualFrameClockحذف شد. اگر نیاز دارید پویانماییها را کنترل کنید، بهجای آن ازcomposeTestRule.mainClockاستفاده کنید. (I3c3e8, b/189951065)
قوانین نمایه اضافه شد
این نسخه پخش قوانین نمایه را به واحدهای پیشنویس زیر اضافه میکند (I14ed6):
- androidx.compose.animation
- androidx.compose.animation-core
- androidx.compose.foundation
- androidx.compose.foundation-layout
- androidx.compose.material
- androidx.compose.material-ripple
- 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
قوانین نمایه چیست؟
قوانین نمایه برای کتابخانه در فایل نوشتاری
baseline-prof.txtواقع درsrc/mainیا مسیر معادل آن مشخص شده است. فایل در هر خط یک قانون را مشخص میکند، که در این مورد قانون الگویی برای مطابقت با روشها یا کلاسها در کتابخانه است. نحو این قوانین مجموعهای از قالب نمایهخوانا برای انسان ART است که هنگام استفاده ازadb shell profman --dump-classes-and-methods ...استفاده میشود. این قوانین یکی از دو شکل را برای هدفیابی روشها یا کلاسها میگیرند.قانون روش الگوی زیر را خواهد داشت:
<FLAGS><CLASS_DESCRIPTOR>-><METHOD_SIGNATURE>و قانون کلاس الگوی زیر را خواهد داشت:
<CLASS_DESCRIPTOR>در اینجا
<FLAGS>یک یا چند نویسه از نویسههایH،S، وPاست که نشان میدهد آیا این روش باید بهعنوان «داغ»، «راهاندازی»، یا «پساز راهاندازی» پرچمگذاری شود یا نه.
<CLASS_DESCRIPTOR>توصیفگر کلاسی است که روش هدفگذاریشده به آن تعلق دارد. برای مثال، کلاسandroidx.compose.runtime.SlotTableتوصیفگرLandroidx/compose/runtime/SlotTable;را خواهد داشت.
<METHOD_SIGNATURE>امضای روش است و شامل نام، انواع پارامتر، و انواع برگشتی روش میشود. برای مثال، روشfun isPlaced(): BooleanدرLayoutNodeامضایisPlaced()Zرا دارد.این الگوها میتوانند دارای نویسههای عام (
**،*، و?) باشند تا یک قانون واحد چندین روش یا کلاس را دربر بگیرد.
قوانین چه کاری انجام میدهند؟
روشی که پرچم
Hرا دارد نشان میدهد که این روش یک روش «داغ» است و باید ازقبل کامپایل شود.روشی که پرچم
Sرا دارد نشان میدهد که این روش در زمان راهاندازی فراخوانده میشود و باید ازقبل کامپایل شود تا از هزینه کامپایل و تفسیر روش در زمان راهاندازی جلوگیری شود.روشی که پرچم
Pرا دارد نشان میدهد که این روشی است که پساز راهاندازی فراخوانده میشود.کلاسی که در این فایل وجود دارد نشان میدهد که درطول راهاندازی استفاده میشود و باید در پشته ازپیش تخصیص داده شود تا از هزینه بار کردن کلاس جلوگیری شود.
این چگونه کار میکند؟
- کتابخانهها میتوانند این قوانین را تعریف کنند که در آرتیفکتهای AAR بستهبندی میشوند. وقتی برنامهای ساخته میشود که شامل این آرتیفکتها است، این قوانین با هم ادغام میشوند و از قوانین ادغامشده برای ساختن نمایه باینری فشرده ART که مختص برنامه است استفاده میشود. سپس ART میتواند هنگام نصب برنامه در دستگاهها از این نمایه استفاده کند تا زیرمجموعه خاصی از برنامه را ازپیش کامپایل کند و عملکرد برنامه، بهویژه اولین اجرا، را بهبود دهد. توجه داشته باشید که این کار هیچ تأثیری بر برنامههای اشکالزداییشدنی نخواهد داشت.
نسخه 1.0.0-beta08
۲ ژوئن ۲۰۲۱
androidx.compose.animation:animation:1.0.0-beta08 و androidx.compose.animation:animation-core:1.0.0-beta08 منتشر شدند. نسخه 1.0.0-beta08 حاوی این تعهدها است.
رفع اشکالها
- اکنون
detectDragGesures،detectVerticalGestures، وdetectHorizontalGesturesتغییر موقعیت را بهطور خودکار مصرف میکنند و نیازی به فراخوانی change.consumePositionChange در برگشتیهای onDrag نیست (I42fc4، b/185096350، b/187320697) -
Modifier.onGloballyPositioned()تغییر کرد تا مختصات این اصلاحکننده را در زنجیره اصلاحکننده گزارش کند، نه مختصات چیدمان را پساز اعمال همه اصلاحکنندهها. این یعنی اکنون ترتیب اصلاحکنندهها بر مختصاتی که گزارش میشود تأثیر میگذارد. (Ieb67d، b/177926591)
نسخه 1.0.0-beta07
۱۸ مه ۲۰۲۱
androidx.compose.animation:animation:1.0.0-beta07 و androidx.compose.animation:animation-core:1.0.0-beta07 منتشر شدند. نسخه 1.0.0-beta07 شامل این تعهدها است.
تغییرات میانای برنامهسازی کاربردی
- میانای برنامهسازی کاربردی جدید
AnimatedVisibilityکه از مشخص شدن رؤیتپذیری درMutableTransitionStateپشتیبانی میکند. این کار همچنین به وضعیتهای پویانمایی اجازه میدهد ازطریقcurrentStateوisIdleدر خارج ازAnimatedVisibilityمشاهده شوند.- پشتیبانی از انتقال فرزند جدید در «انتقال»
- پشتیبانی از پویانمایی گذار خروج/ورود سفارشی در AnimatedVisibility بااستفاده از AnimationScope.transition
- اصلاحگر animateEnterExit جدید برای همه فرزندان AnimatedVisibility دردسترس است
- میاناهای برنامهسازی کاربردی AnimatedVisibility که پارامتر
initiallyVisibleمیگیرند منسوخ شده است (I702f3)
نسخه 1.0.0-beta06
۵ مه ۲۰۲۱
androidx.compose.animation:animation:1.0.0-beta06 و androidx.compose.animation:animation-core:1.0.0-beta06 منتشر شدند. نسخه 1.0.0-beta06 شامل این تعهدها است.
نسخه 1.0.0-beta05
۲۱ آوریل ۲۰۲۱
androidx.compose.animation:animation:1.0.0-beta05 و androidx.compose.animation:animation-core:1.0.0-beta05 منتشر شدند. نسخه 1.0.0-beta05 حاوی این تعهدها است.
رفع اشکالها
- فایلهای AndroidManifest از ui-test-manifest و ui-tooling-data اکنون با Android 12 سازگار است (I6f9de، b/184718994)
نسخه 1.0.0-beta04
۷ آوریل ۲۰۲۱
androidx.compose.animation:animation:1.0.0-beta04 و androidx.compose.animation:animation-core:1.0.0-beta04 منتشر شدند. نسخه 1.0.0-beta04 شامل این تعهدات است.
تغییرات میانای برنامهسازی کاربردی
- نمونههای عمومی
RowScope،ColumnScope،BoxScope،BoxWithConstraintsScopeبرداشته شد. (I4e83e، b/181869067)
نسخه 1.0.0-beta03
۲۴ مارس ۲۰۲۱
androidx.compose.animation:animation:1.0.0-beta03 و androidx.compose.animation:animation-core:1.0.0-beta03 منتشر شدند. نسخه 1.0.0-beta03 شامل این تعهدات است.
نسخه 1.0.0-beta02
۱۰ مارس ۲۰۲۱
androidx.compose.animation:animation:1.0.0-beta02 و androidx.compose.animation:animation-core:1.0.0-beta02 منتشر شدند. نسخه 1.0.0-beta02 شامل این تعهدات است.
رفع اشکالها
- اعمال محدودیتها بر استفاده عمومی از میاناهای برنامهسازی کاربردی آزمایشی (I6aa29، b/174531520)
نسخه 1.0.0-beta01
۲۴ فوریه ۲۰۲۱
androidx.compose.animation:animation:1.0.0-beta01 و androidx.compose.animation:animation-core:1.0.0-beta01 منتشر شدند. نسخه 1.0.0-beta01 شامل این تعهدات است.
این اولین نسخهٔ پخش Compose 1.0.0 Beta است.
تغییرات میانای برنامهسازی کاربردی
-
InteractionStateبا[Mutable]InteractionSourceجایگزین شد- واسطها مسئول انتشار / جمعآوری رویدادهای «تعامل» هستند.
- بهجای انتقال
interactionState = remember { InteractionState() }به عناصری مثلButtonوModifier.clickable()، ازinteractionSource = remember { MutableInteractionSource() }استفاده کنید. - بهجای:
Interaction.Pressed in interactionStateباید از توابع افزونه در InteractionSource استفاده کنید، مثلاً InteractionSource.collectIsPressedAsState(). - برای موارد استفاده پیچیده میتوانید از InteractionSource.interactions برای مشاهده جاریسازی «تعاملها» استفاده کنید. برای اطلاعات بیشتر، به اسناد و نمونههای InteractionSource مراجعه کنید.
- (I85965، b/152525426، b/171913923، b/171710801، b/174852378)
- بستههای روشهای smoothScrollBy و scrollBy به
androidx.compose.foundation.gestures.*تغییر کرد (I3f7c1، b/175294473) - نام اصلاحگرهای اندازه تغییر کرد. Modifier.width/height/size به requiredWidth/requiredHeight/requiredSize تغییر نام داد. نام Modifier.preferredWidth/preferredHeight/preferredSize به width/height/size تغییر کرد. (I5b414)
- جهتیابی به بسته پایه منتقل شده است. VelocirtTracker از ui.gesture به ui.input.pointer منتقل شد. (Iff4a8، b/175294473)
- AnimationClockObservable و زیرکلاسهای آن برداشته شدهاند. AnimatedFloat برداشته شده است. (Icde52، b/177457083)
- Modifier.draggable اکنون بهجای لامبدای ساده، DraggableState را میپذیرد. میتوانید ازطریق
rememberDraggableState { delta -> }وضعیت ایجاد کنید تا همان رفتار قبلی را داشته باشید (Ica70f، b/175294473) - animate، animatedValue، و AnimatedValue APIs برداشته شدهاند (If27bc، b/177457083)
- AnimationEndReason.Interrupted برداشته شد. اگر پویانمایی قطع شود، CancellationException پرتاب خواهد شد. (I2cbbc, b/179695417)
- TargetAnimation API برداشته شده است. (If47d1، b/177457083)
نسخه 1.0.0-alpha12
۱۰ فوریه ۲۰۲۱
androidx.compose.animation:animation:1.0.0-alpha12 و androidx.compose.animation:animation-core:1.0.0-alpha12 منتشر شدند. نسخه 1.0.0-alpha12 شامل این تعهدات است.
تغییرات میانای برنامهسازی کاربردی
-
Modifier.pointerInputاکنون برای نشان دادن زمان بازراهاندازی روتین تشخیص ورودی اشارهگر برای وابستگیهای جدید، به کلیدهای بهیادآوری نیاز دارد. (I849cd) - نام «محدوده» به DpRect (I4b32a) تغییر کرده است
- نام پارامتر برای AnimationSpec در سیستم پویانمایی یکپارچه شد. همچنین Enter/ExitTransition را محدود کنید تا FiniteAnimationSpec را بپذیرد. (Ie47c5، b/177457083)
- Animatable.snapTo و Animatable.stop اکنون توابع تعلیق هستند (If4288)
- همانطور که قبلاً
state { 0 }قابل ترکیب را برداشتیم و اکنون استفاده ازremember { mutableStateOf(0) }را ترویج میکنیم،savedInstanceState { 0 }قابل ترکیب را نیز برمیداریم. باید ازrememberSaveable { mutableStateOf(0) }استفاده کنید و اگر نوع استفادهشده در MutableState بتواند در Bundle ذخیره شود، بهطور خودکار ذخیره و بازیابی خواهد شد. اگر قبلاً یک شیء ذخیرهکننده سفارشی را ارسال میکردید، اکنون باید از سربار جدیدی از rememberSaveable استفاده کنید کهstateSaverپارامتر دارد. استفاده به این شکل خواهد بود:val holder = rememberSaveable(stateSaver = HolderSaver) { mutableStateOf(Holder(0)) }(Ib4c26، b/177338004) - امضای روش «محو متقاطع» بهروزرسانی شد تا با بقیه سیستم پویانمایی سازگارتر شود. (Ib05ed، b/177457083)
- نام rememberSavedInstanceState() به rememberSaveable() تغییر کرده است و به بسته androidx.compose.runtime.saveable منتقل شده است. (I1366e، b/177338004)
- نام RestorableStateHolder به SaveableStateHolder تغییر کرد و به بسته androidx.compose.runtime.saveable منتقل شد. نام روش داخلی RestorableStateProvider به SaveableStateProvider تغییر کرد. نوع عمومی برداشته شد تا بتوانید «هرچیزی» را بهعنوان کلید ارسال کنید. شرح آزمایشی دیگر لازم نیست. (I0902e، b/174598702)
- «میانای برنامهسازی کاربردی Modifier.animateContentSize» بهروزرسانی شد تا با بقیه سیستم پویانمایی سازگار شود. (I0bf75، b/177457083)
- AnimatedValue/Float اکنون منسوخ شده است. لطفاً بهجای آن از Animatable استفاده کنید. (I71345، b/177457083)
- tapGestureFilter، doubleTapGestureFilter، longPressGestureFilter، و pressIndicaitonGestureFilter منسوخ شدهاند. درعوض از Modifier.clickable یا Modifier.pointerInput با تابع detectTapGestures استفاده کنید. (I6baf9، b/175294473)
- عنصر زمینه روتین همکار
InfiniteAnimationPolicyرا معرفی کرد که در پویانماییهای بینهایت اعمال خواهد شد. بهطور پیشفرض هیچ خطمشیای نصب نمیشود، بهجز زمانی که آزمایشها باComposeTestRuleاجرا میشوند. (I50ec4, b/151940543) - روشهای ساختارشکنی و copy() از چندین کلاس که بهندرت استفاده میشدند برداشته شده است. (I26702, b/178659281)
- زمان پخش در پویانمایی اکنون به نانوثانیه یکپارچه شده است (If776a)
- ساختافزار compose:runtime-dispatch اکنون منسوخ شده است. اکنون میتوانید MonotonicFrameClock را در compose:runtime و AndroidUiDispatcher را در compose:ui پیدا کنید. (Ib5c36)
-
Animation.isInfiniteوVectorizedAnimationSpec.isInfiniteاضافه شد که نشان میدهد پویانمایی بینهایت است یا نه. این ویژگی میتواند در پیادهسازیهای پویانماییها برای مدیریت ویژه چنین پویانماییهایی استفاده شود. برای مثال، پیام ویژه «زمان باقیمانده» میتواند نمایش داده شود، یا درطول آزمایشها، پویانمایی میتواند لغو شود تا از انتظار نامحدود برای بیکاری جلوگیری شود. (Iebb05، b/151940543) - بهجای «زمان روشن بودن» از «طولانی» بهعنوان نوع زمان پویانمایی استفاده کنید (Ie3aa7، b/177420019)
نسخه 1.0.0-alpha11
۲۸ ژانویه ۲۰۲۱
androidx.compose.animation:animation:1.0.0-alpha11 و androidx.compose.animation:animation-core:1.0.0-alpha11 منتشر شدند. نسخه 1.0.0-alpha11 شامل این تعهدات است.
تغییرات میانای برنامهسازی کاربردی
- «گذار» مبتنی بر «تعریف گذار» نامناسب شده است (I0ac57)
- فیلد برچسبی برای «گذار» اضافه شده است و پویانماییهای فرزند در ابزارها نمایش داده میشود (I619fb)
- animateAsState اکنون animateFooAsState است، که در آن Foo نوع متغیر پویانماییشده است. برای نمونه، Float، Dp، Offset، و غیره (Ie7e25)
- InfiniteTransition جدیدی که هر تعداد پویانمایی فرزند را اجرا میکند. (I1da81)
- واسطهای پارامتر حالتدار «مطلب» را تغییر میدهد تا توابع @Composable داشته باشد که
State<T>را برمیگردانند. Animatable.asState() را اضافه میکند تا تبدیل Animatable به State آسانتر شود. همچنین animateElevation را به یک افزونه تعلیق در Animatable تغییر میدهد. (If613c)
رفع اشکالها
- onCommit، onDispose، و onActive بهنفع SideEffect و DisposableEffect APIs منسوخ شدهاند (If760e)
- اکنون از «حالت اولیه» در updateTransition پشتیبانی میشود (Ifd51d)
- پارامتر شرح محتوا به «تصویر» و «نماد» اضافه شده است. از آن برای ارائه شرح به خدمات دسترسپذیری (I2ac4c) استفاده میشود
- invalidate و compositionReference() اکنون بهترتیب بهنفع currentRecomposeScope و rememberCompositionReference منسوخ شدهاند. (I583a8)
- «مدت» و «زمان کار» با «میلیثانیه طولانی» جایگزین خواهد شد، و این مرحله وابستگی ورودی اشارهگر به آن کلاسها را برمیدارد. (Ia33b2، b/175142755، b/177420019)
- اکنون میتوان عناصر کلیککردنی، قابلتغییر، و قابلانتخاب را خارجاز ترکیب ایجاد کرد (I0a130، b/172938345، b/175294473)
- «تسهیل» به یک میانای کارکردی (Ib14e5) تغییر کرده است
- روش کارخانه جدید
items(count: Int)برای محدوده LazyColumn/LazyRow/LazyVerticalGrid. items(items: List)وitemsIndexed(items: List)اکنون تابعهای افزونه هستند، بنابراین باید آنها را هنگام استفاده بهصورت دستی وارد کنید. سربار جدید برای «آرایهها»: items(items: Array) و itemsIndexed(Array) (I803fc، b/175562574) - استفاده از TestCoroutineDispatcher در آزمایش (I532b6)
- PointerInputData برداشته شد و PointerInputChange اصلاح شد تا همه فیلدهای PointerInputData را داشته باشد. PointerInputEvent و PointerInputEventData داخلی شدند زیرا در هیچ میانای برنامهسازی کاربردی عمومی استفاده نمیشوند. (Ifff97، b/175142755)
نسخه 1.0.0-alpha10
۱۳ ژانویه ۲۰۲۱
androidx.compose.animation:animation:1.0.0-alpha10 و androidx.compose.animation:animation-core:1.0.0-alpha10 منتشر شدند. نسخه 1.0.0-alpha10 حاوی این تعهدات است.
تغییرات میانای برنامهسازی کاربردی
- «سرعت» اصلاح شد تا دارای اجزای تشکیلدهنده و عملیات ریاضی باشد. (Ib0447)
- نام
@ExperimentalTestingبه@ExperimentalTestApiتغییر کرد تا با حاشیهنویسیهای مشابه میانای برنامهسازی کاربردی آزمایشی (Ia4502، b/171464963) سازگار باشد - «موقعیت» به «DpOffset» تغییر نام داد و getDistance() برداشته شد (Ib2dfd)
- میانای برنامه کاربردی عمومی Any.identityHashCode() برداشته شد (I025d7)
رفع اشکالها
- میانای برنامهسازی کاربردی جدید مبتنی بر روتین همکار
Animatableکه انحصاری بودن متقابل بین پویانماییهایش را تضمین میکند. DecayAnimationSpec جدید برای پشتیبانی از پویانمایی افت چندبعدی (I820f2، b/168014930) -
animate()اکنون باanimateAsState()جایگزین شده است، که بهجایT،State<T>برمیگرداند. این کار عملکرد را بهبود میبخشد، زیرا محدوده نامعتبرسازی میتواند به جایی که مقدار «وضعیت» خوانده میشود محدود شود. (Ib179e)
نسخه 1.0.0-alpha09
۱۶ دسامبر ۲۰۲۰
androidx.compose.animation:animation:1.0.0-alpha09 و androidx.compose.animation:animation-core:1.0.0-alpha09 منتشر شدند. نسخه 1.0.0-alpha09 شامل این تعهدات است.
تغییرات میانای برنامهسازی کاربردی
- Dp.VectorConverter، Position.VectorConverter، و غیره به animation-core منتقل شد و VectorConveters قدیمی (If0c4b) منسوخ شد
- مجموعه کاملاً جدیدی از «میاناهای برنامهسازی کاربردی انتقال» با سهولت استفاده بهبودیافته، و پشتیبانی از پویانماییهای اضافه شده بهصورت پویا، و هدفهای پویانمایی محاسبهشده بهصورت پویا معرفی شد. این «میانای برنامهسازی کاربردی» بهعنوان آزمایشی علامتگذاری شده است تا بهراحتی از «میانای برنامهسازی کاربردی» مبتنی بر TransitionDefinition متمایز شود. (Ia7fe3)
رفع اشکالها
- Lambdas در اصلاحکنندههای افست اکنون بهجای Float، مقدار IntOffset برمیگرداند. (Ic9ee5، b/174137212، b/174146755)
- LazyColumnFor، LazyRowFor، LazyColumnForIndexed، و LazyRowForIndexed را منسوخ کنید. بهجای آن از LazyColumn و LazyRow استفاده کنید (I5b48c)
- برای تعلیق کردن ورودی اشارهگر APIs، HandlePointerInputScope به AwaitPointerEventScope و handlePointerInput() به awaitPointerEventScope() تغییر نام داد. (Idf0a1، b/175142755)
- تابع جدید infiniteRepeatable برای ایجاد InfiniteRepeatableSpec (I668e5)
- حاشیهنویسی ExperimentalPointerInput برداشته شد (Ia7a24)
نسخه 1.0.0-alpha08
۲ دسامبر ۲۰۲۰
androidx.compose.animation:animation:1.0.0-alpha08 و androidx.compose.animation:animation-core:1.0.0-alpha08 منتشر شدند. نسخه 1.0.0-alpha08 شامل این تعهدات است.
تغییرات میانای برنامهسازی کاربردی
- بررسی lint برای نامگذاری و موقعیت پارامتر لامبدای ترکیبشدنی اضافه شد تا با رهنمودهای Compose سازگاری داشته باشد.
همچنین برخیاز APIها را بااستفاده از
childrenبهعنوان نام لامبدای انتهاییشان بهcontentانتقال دادیم، طبق بررسی و راهنمایی lint. (Iec48e) - «میاناهای برنامهسازی کاربردی» قبلاً نامناسب برداشته شدند:
-
Modifier.onPositionedبرداشته شد، ازModifier.onGloballyPositionedاستفاده کنید. -
Modifier.onDrawبرداشته شد، ازModifier.onDrawBehindاستفاده کنید. -
Modifier.plusبرداشته شد، ازModifier.thenاستفاده کنید. -
Color.Unsetبرداشته شد، ازColor.Unspecifiedاستفاده کنید. - کلاس
PxBoundsبرداشته شد، درعوض ازRectاستفاده کنید. - (Ie9d02, b/172562222)
-
- گزینه موقتاً اضافه شد تا اجازه دهد TestAnimationClock توسط MonotonicFrameClock کنترل شود (I1403b، b/173402197)
رفع اشکالها
- Modifier.drawLayer به Modifier.graphicsLayer تغییر نام داد همچنین کلاسهای مرتبط طبق بازخورد شورای API به GraphicsLayer بهروزرسانی شد. (I0bd29, b/173834241)
- «واسطهای برنامهسازی کاربردی» Modifier.scale/rotate
بهعنوان تسهیلات برای drawLayer اضافه شد.
- نام Modifier.drawOpacity به Modifier.alpha تغییر کرد
- نام Modifier.drawShadow به Modifier.shadow تغییر یافت (I264ca، b/173208140)
- فیلدهای زمان کار و موقعیت PointerInputData را غیرقابلتهی کرد. (Id468a)
- نام اصلاحکنندههای offsetPx به offset تغییر کرد. اکنون بهجای State، پارامترهای لامبدا میگیرند. (Ic3021، b/173594846)
- میاناهای برنامهسازی کاربردی جدید برای اجرای پویانماییها در روتینهای همکار (Ied662)
- «محیطهای» منسوخشدهای که نام آنها با
Ambientبهعنوان پسوند بود، با داراییهای جدیدی که پیشوند آنها «محیط» بود جایگزین شدند و از سایر «محیطها» و دستورالعملهای «میانای برنامهسازی کاربردی Compose» پیروی کردند. (I33440) - کنترل زمان در آزمایشها (TestAnimationClock و موارد استفاده آن) اکنون آزمایشی است (I6ef86، b/171378521)
- برداشتن واحد ui-test قدیمی و کدهای جایخالی آن (I3a7cb)
- نام تابع
RestorableStateHolder.withRestorableStateبهRestorableStateProviderتغییر کرد (I66640) - میانای «تراز» بهروزرسانی و کاربردی شد. (I46a07، b/172311734)
نسخه 1.0.0-alpha07
۱۱ نوامبر ۲۰۲۰
androidx.compose.animation:animation:1.0.0-alpha07 و androidx.compose.animation:animation-core:1.0.0-alpha07 منتشر شدند. نسخه 1.0.0-alpha07 حاوی این تعهدات است.
رفع اشکالها
- AmbientTextStyle، ProvideTextStyle، و AmbientContentColor منسوخ شدهاند. بهجای آن از نسخههای جدید موجود در کتابخانه «ماتریال» استفاده کنید. برای برنامههای غیر Material، باید بهجای آن سیستم طراحی خودتان را ایجاد کنید که دارای زمینههای خاصی باشد که بتواند در عناصر خودتان استفاده شود. (I74acc، b/172067770)
- foundation.Text منسوخ شده است و با material.Text جایگزین شده است. برای میانای برنامهسازی کاربردی نوشتاری ساده و بیطرف که مقادیر را از زمینه مصرف نمیکند، androidx.compose.foundation.BasicText را ببینید. (If64cb)
- MeasureResult از MeasureScope خارج شد. (Ibf96d، b/171184002)
- چندین نماد مربوط به چیدمان از androidx.compose.ui به androidx.compose.layout.ui منتقل شدند. (I0fa98، b/170475424)
نسخه 1.0.0-alpha06
۲۸ اکتبر ۲۰۲۰
androidx.compose.animation:animation:1.0.0-alpha06 و androidx.compose.animation:animation-core:1.0.0-alpha06 منتشر شدند. نسخه 1.0.0-alpha06 شامل این تعهدات است.
تغییرات میانای برنامهسازی کاربردی
- فعال کردن گذارها در ComposeTestRule؛ برداشتن گزینه فعال کردن مکاننمای چشمکزن از ComposeTestRule. (If0de3)
نسخه 1.0.0-alpha05
۱۴ اکتبر ۲۰۲۰
androidx.compose.animation:animation:1.0.0-alpha05 و androidx.compose.animation:animation-core:1.0.0-alpha05 منتشر شدند. نسخه 1.0.0-alpha05 شامل این تعهدات است.
تغییرات میانای برنامهسازی کاربردی
- واسط کاربر و زیرکلاسهای «پویانمایی جدید»: این کلاسها شرایط شروع و پایان پویانماییها را ذخیره میکنند و بنابراین امکان میدهند مقدار و سرعت فقط ازطریق زمان پخش پرسیده شود (Ie95bd، b/163329867)
رفع اشکالها
- OnPositionedModifier به OnGloballyPositionedModifier تغییر نام داده شد و onPositioned() به onGloballyPositioned() تغییر نام داد. (I587e8، b/169083903)
contentColor() و currentTextStyle() APIs را منسوخ میکند و آنها را بهترتیب با AmbientContentColor و AmbientTextStyle ambients جایگزین میکند. میتوانید بااستفاده از
.currentدر دارایی محیطی، مانند هر محیط دیگری، به مقدار فعلی دسترسی پیدا کنید. این تغییر برای ایجاد یکپارچگی و جلوگیری از وجود چندین روش برای انجام یک کار انجام شده است. علاوهبراین، برخیاز داراییهای محیطی را تغییر نام میدهد تا هدف آنها را بهتر توصیف کند، به این صورت:- ContentColorAmbient -> AmbientContentColor
- TextStyleAmbient -> AmbientTextStyle
- IndicationAmbient -> AmbientIndication
- EmphasisAmbient -> AmbientEmphasisLevels
- RippleThemeAmbient -> AmbientRippleTheme (I37b6d)
نسخه 1.0.0-alpha04
۱ اکتبر ۲۰۲۰
androidx.compose.animation:animation:1.0.0-alpha04 و androidx.compose.animation:animation-core:1.0.0-alpha04 منتشر شدند. نسخه 1.0.0-alpha04 شامل این تعهدات است.
تغییرات میانای برنامهسازی کاربردی
- Annotated rootAnimationClockFactory، transitionsEnabled، blinkingCursorEnabled، و textInputServiceFactory را با @VisibleForTesting به API داخلی تبدیل کنید و kdoc آنها را پنهان کنید (I554eb، b/168308412)
رفع اشکالها
- بسیاری از «میاناهای برنامهسازی کاربردی گرافیک» بهروزرسانی شد
- میاناهای برنامهسازی کاربردی تبدیل چرخش و مقیاس بهروزرسانی شد تا از یک پارامتر «آفست» برای نشان دادن مختصات محور بهجای پارامترهای شناور جداگانه برای مختصات x/y در DrawScope و DrawTransform استفاده کند
- روشهای Rect.expandToInclude و Rect.join برداشته شد
- مستندات «شعاع» بهروز شد تا علاوهبر بیضی، بیضیشکل را نیز شامل شود
- اسناد اضافه شد تا نشان دهد سازنده عمومی برای کلاس درونخطی «شعاع» نباید مستقیماً فراخوانده شود، بلکه اشیا «شعاع» باید ازطریق سازندههای تابع آنها نمونهسازی شوند
- «میاناهای برنامهسازی کاربردی RoundRect» برای پُرسمان topRight، bottomRight، bottomCenter، و غیره برداشته شد.
- Rect.shift منسوخ شده است. بهجای آن از Rect.translate استفاده کنید
- RoundRect.grow و Rect.shrink API برداشته شد
- نام RoundRect.outerRect به Rect.boundingRect تغییر کرد
- روشهای RoundRect.middleRect/tallMiddleRect/wideMiddleRect و Rect.isStadium برداشته شد
- نام RoundRect.longestSide به RoundRect.maxDimension تغییر کرد
- نام RoundRect.shortestSide به RoundRect.minDimension تغییر کرد
- RoundRect.center را بهجای تابع به دارایی تغییر داد
- سازنده RoundRect بهروزرسانی شد تا بهجای پارامترهای جداگانه برای مقادیر شعاع x/y، از خصوصیات «شعاع» استفاده کند
- «میاناهای برنامهسازی کاربردی اندازه» که فرض میکرد «مستطیل» با مبدأ در ۰٫۰ است برداشته شد
- میانای برنامهسازی کاربردی مخربی به Radius اضافه شد
- انتقال توابع افزونه RoundRect مختلف به بهجای آن، ویژگیها
- (I8f5c7، b/168762961)
- foundation.Box منسوخ شده است. لطفاً درعوض از foundation.layout.Box استفاده کنید. (Ie5950، b/167680279)
- نام دسته عکس به Box تغییر کرد. «جعبه» قبلی موجود به نفع «جعبه» جدید در compose.foundation.layout منسوخ خواهد شد. عملکرد «چارگوش» جدید این است که وقتی چند فرزند دارد، آنها را روی هم قرار میدهد - این عملکرد با «چارگوش» قبلی که عملکردی مشابه «ستون» داشت متفاوت است. (I94893، b/167680279)
- پارامترهای تزئین جعبه منسوخ شده است. اگر میخواهید جعبهتان تزئینات/حاشیه داشته باشد، بهجای آن از «اصلاحگرها» استفاده کنید (Modifier.background، Modifier.border، Modifier.padding) (Ibae92، b/167680279)
- از وارد کردن ایستا محتوای محدودههای چیدمان (برای نمونه alignWithSiblings در RowScope) جلوگیری کردیم. درعوض باید از محدوده صریح جایگزین استفاده شود:
with(RowScope) { Modifier.alignWithSiblings(FirstBaseline) }. (I216be، b/166760797)
نسخه 1.0.0-alpha03
۱۶ سپتامبر ۲۰۲۰
androidx.compose.animation:animation:1.0.0-alpha03 و androidx.compose.animation:animation-core:1.0.0-alpha03 منتشر شدند. نسخه 1.0.0-alpha03 حاوی این تعهدات است.
رفع اشکالها
- کاربردهای گرانش بهطور پیوسته به تراز یا تراز کردن در میاناهای برنامهسازی کاربردی چیدمان تغییر نام داده شد. (I2421a، b/164077038)
نسخه 1.0.0-alpha02
۲ سپتامبر ۲۰۲۰
androidx.compose.animation:animation:1.0.0-alpha02 و androidx.compose.animation:animation-core:1.0.0-alpha02 منتشر شدند. نسخه 1.0.0-alpha02 شامل این تعهدات است.
تغییرات میانای برنامهسازی کاربردی
ManualFrameClock.hasAwaitersاضافه شد تا بررسی شود آیا چیزی منتظر قاب از آن ساعت است یا نه؛runWithManualClockبهعنوان جایگزینrunBlockingهنگام اجرای آزمایشهایی که به ManualFrameClock نیاز دارند؛TestUiDispatcher.Mainکه دسترسی آسان به توزیعکننده اصلی رابط کاربری در آزمایشهای شما را فراهم میکند.برای مثال:
@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") } }
رفع اشکالها
onPreCommit منسوخ شده است؛ onCommit اکنون رفتار onPreCommit را دارد.
اکنون onCommit و onActive در همان قاب طراح رقص اجرا میشوند که تغییرات ترکیب در آن ثبت شده است، نه در ابتدای قاب طراح رقص بعدی. (I70403)
نسخه 1.0.0-alpha01
۲۶ اوت ۲۰۲۰
androidx.compose.animation:animation:1.0.0-alpha01 و androidx.compose.animation:animation-core:1.0.0-alpha01 منتشر شدند. نسخه 1.0.0-alpha01 شامل این تعهدات است.
نسخه 0.1.0-dev
نسخه 0.1.0-dev17
۱۹ اوت ۲۰۲۰
androidx.compose.animation:animation:0.1.0-dev17 و androidx.compose.animation:animation-core:0.1.0-dev17 منتشر شدند. نسخه 0.1.0-dev17 حاوی این تعهدات است.
ویژگیهای جدید
تغییرات میانای برنامهسازی کاربردی
- Offset به کلاس بهخط تبدیل شده است (Iaec70)
- IntOffset اکنون یک کلاس درونخطی است (Iac0bf)
- IntSize اکنون کلاس بهخط است (I2bf42)
ترکیبپذیر AnimatedVisibilty ظاهر و ناپدید شدن محتوای فرزند را پویانمایی میکند.
EnterTransition و ExitTransition برای کار با ترکیبپذیر AnimatedVisibilty معرفی شدهاند تا ۳ نوع مختلف از پویانمایی ظاهر و ناپدید شدن ارائه دهند: محو شدن، لغزیدن، و ازهم بازشدن/جمع شدن محتوا. انواع مختلف پویانمایی را میتوان با هم ترکیب کرد تا ظاهر و احساسی سفارشیتر ایجاد شود. (Idda11)
PxBounds منسوخشده بهنفع Rect. همه موارد استفاده از PxBounds با rect بهروزرسانی شد و حاشیهنویسیهای مناسب منسوخ کردن/جایگزین کردن برای کمک به انتقال اضافه شد. (I37038، b/162627058)
رفع اشکالها
- نام
PlacementScope.placeAbsolute()بهPlacementScope.place()تغییر کرد و نامPlacementScope.place()قبلی بهPlacementScope.placeRelative()تغییر کرد. درنتیجه، روشPlacementScope.place()دیگر بهطور خودکار موقعیت را در زمینههای راستبهچپ قرینه نخواهد کرد. اگر این تغییر مطلوب است، درعوض ازPlacementScope.placeRelative()استفاده کنید. (I873ac، b/162916675) -
state { ... }قابل ترکیب اکنون بهنفع فراخوانیهای صریح بهremember { mutableStateOf(...) }برای وضوح منسوخ شده است. این کار سطح کلی میانای برنامهسازی کاربردی و تعداد مفاهیم مدیریت وضعیت را کاهش میدهد و با الگویby mutableStateOf()برای واگذاری دارایی کلاس مطابقت دارد. (Ia5727)
نسخه 0.1.0-dev16
۵ اوت ۲۰۲۰
androidx.compose.animation:animation:0.1.0-dev16 و androidx.compose.animation:animation-core:0.1.0-dev16 منتشر شدند. نسخه 0.1.0-dev16 حاوی این تعهدها است.
تغییرات میانای برنامهسازی کاربردی
- تبدیلکنندههای برداری داخلی برای تبدیل واحدهای داخلی اکنون ازطریق
Foo.VectorConverterدردسترس است. برای نمونهDp.VectorConverter،Color.VectorConverter،Float.VectorConverter، و غیره (I3e273) - از شنونده پایان در
Modifier.animateContentSize()پشتیبانی کنید بهطوریکه وقتی پویانمایی تغییر اندازه تمام میشود، شنونده بههمراه اندازه شروع/پایان پویانمایی مطلع شود. (I277b2) - اصلاحگر animateContentSize جدید که تغییر اندازه چیدمان اصلاحگر فرزندش را پویانمایی میکند (Ieffdc)
MonotonicFrameAnimationClockاضافه شد که به شما امکان میدهد از MonotonicFrameClock بهعنوانAnimationClockObservableبرای پر کردن شکاف بین ساعتهای مبتنی بر روتینهای همزمان جدید و میاناهای برنامهسازی کاربردی که هنوز از ساعتهای مبتنی بر برگشتی قدیمی استفاده میکنند استفاده کنید.معادل
MonotonicFrameClockمبلغManualAnimationClockاکنونManualFrameClockاست. (I111c7, b/161247083)
رفع اشکالها
- میاناهای برنامهسازی کاربردی برای پشتیبانی از راستبهچپ بهروز شده است. LayoutDirectionAmbient اضافه شده است که میتوان از آن برای خواندن و تغییر دادن جهت چیدمان استفاده کرد. Modifier.rtl و Modifier.ltr برداشته شدهاند. (I080b3)
- برای transitionDefinition، نوع T باید بهطور صریح مشخص شود. (I1aded)
- بسته foundation.shape.corner به foundation.share مسطح شد (I46491، b/161887429)
- Modifier.plus منسوخ شده است، درعوض از Modifier.then استفاده کنید. «سپس» نشان قویتری از ترتیب دارد و همچنین از تایپ کردن
Modifier.padding().background() + anotherModifierجلوگیری میکند، که زنجیره را میشکند و خواندن را سختتر میکند (Iedd58، b/161529964) - نام Modifier.drawBackground به Modifier.background تغییر کرده است (I13677)
نسخه 0.1.0-dev15
۲۲ ژوئیه ۲۰۲۰
androidx.compose.animation:animation:0.1.0-dev15 و androidx.compose.animation:animation-core:0.1.0-dev15 منتشر شدند. نسخه 0.1.0-dev15 حاوی این تعهدات است.
بهروزرسانی وابستگیها
- برای استفاده از نسخه
0.1.0-dev15«نوشتن»، باید وابستگیهایتان را مطابق با تکهکدهای جدیدی که در بالا در اعلام وابستگیها نشان داده شده است بهروز کنید.
تغییرات میانای برنامهسازی کاربردی
- «میانای برنامهسازی کاربردی انتقال» تغییر کرده است تا بهجای انتقال «وضعیت انتقال» به فرزندان، «وضعیت انتقال» را برگرداند. این کار باعث میشود این «میانای برنامهسازی کاربردی» با میاناهای برنامهسازی کاربردی animate() سازگارتر شود. (I24e38)
- پارامتر اصلاحکننده برای «محو شدن تدریجی» (I87cfe، b/159706180) اضافه شد
- برای روشن کردن مفهوم مشخصات پویانمایی ثابت، در سطح بالای «میاناهای برنامهسازی کاربردی» بهجای AnimationBuilder از AnimationSpec استفاده کنید
- با برداشتن الزام لامبدا برای ایجاد AnimationSpecs مثل tween و spring، زبان DSL انتقال را بهبود دهید. درعوض، آنها مستقیماً پارامترهای سازنده را میگیرند.
- بهبود سهولت کلی استفاده از AnimationSpec با باز کردن سازندهها بهجای تکیه بر سازندگان
- مدت و تأخیر «قابهای کلیدی» و «میانیابی» را به «عدد صحیح» تغییر دهید. این کار تبدیل نوع غیرضروری و سربار روش را (برای پشتیبانی از «عدد صحیح» و «عدد صحیح طولانی») حذف میکند. (Ica0b4)
- استفاده از IntPx با Int جایگزین شد. IntPxPosition با IntOffset جایگزین شد. IntPxSize با IntSize جایگزین شد. (Ib7b44)
- برای ادغام کردن تعداد کلاسهای استفادهشده برای نمایش اطلاعات اندازهبندی، بهجای PxSize، استفاده از کلاس «اندازه» را استاندارد کنید. این کار مزایای کلاس درونخطی را برای استفاده از long بهمنظور بستهبندی ۲ مقدار شناور برای نشان دادن عرض و ارتفاع نشاندادهشده بهصورت شناور فراهم میکند. (Ic0191)
- برای ادغام کردن تعداد کلاسهای استفادهشده برای نمایش اطلاعات مکانیابی، بهجای استفاده از PxPosition، از کلاس «آفست» استفاده کنید. این کار مزایای کلاس درونخطی را برای استفاده از عدد صحیح طولانی برای بستهبندی ۲ مقدار ممیز شناور برای نمایش انحرافهای x و y که بهصورت ممیز شناور نمایش داده میشوند فراهم میکند. (I3ad98)
- جایگزین کردن استفاده از کلاس Px در کلاسهای مختلف ترکیب بهعنوان بخشی از تلاش بزرگ بازسازی برای تکیه کردن فقط بر Dp و انواع اولیه برای پارامترهای پیکسل (I086f4)
- پشتیبانی animate() برای Dp، Px، Size، Position، Bounds، PxPosition، PxSize، PxBounds، IntPx، IntPxSize، IntPxPosition، IntPxBounds، و AnimationVector اضافه شد (Ib7518)
- Crossfade اکنون پارامتر اختیاری AnimationBuilder را میپذیرد تا امکان پیکربندی پویانمایی را فراهم کند (I6d6e0)
- همه موارد استفاده از «رنگ» تهیپذیر در API با غیرتهیپذیر جایگزین شد و بهجای تهی از Color.Unset استفاده شد (Iabaa7)
- کلاس ValueHolder برداشته شد. کلاسهای AnimatedValue و AnimatedFloat را بازسازی کردیم تا فیلد مقدار پویانمایی را انتزاعی کنیم تا زیرکلاسها بتوانند بهروزرسانی مقدار را مشاهده کنند.
- کلاسهای مدل برای AnimatedValue، AnimatedFloat، و غیره اضافه شد.
- مجموعه جدیدی از APIهای @Composable سبکوزن برای پویانمایی بین مقادیر اضافه شد. (I79530)
- تغییرات ناگهانی در ambients API. برای جزئیات، گزارش و مستندات
Ambient<T>را ببینید (I4c7ee، b/143769776) - حالت تکرار جدید: معکوس. این حالت تکرار قبلی را معکوس میکند زیرا پویانمایی در RepeatableSpec یا VectorizedRepeatableSpec تکرار میشود. (Ibe0f5)
- افزودههای میانای برنامهسازی کاربردی به ManualAnimationClock:
hasObservers: Booleanو پارامتر سازندهdispatchOnSubscribe: Boolean(Iaa134) - میاناهای برنامهسازی کاربردی برای دریافت محدودههای حداقل/حداکثر در AnimatedFloat اضافه شد (Icd9cc)
رفع اشکالها
- نام
runOnIdleComposeبهrunOnIdleتغییر کرد (I83607) - چندین API آزمایشی برای شهودیتر شدن تغییر نام دادند. همه میاناهای برنامهسازی کاربردی findXYZ به onNodeXYZ تغییر نام داده شدند. نام همه «میاناهای برنامهسازی کاربردی doXYZ» به performXYZ تغییر کرد. (I7f164)
- میاناهای برنامهسازی کاربردی پویانمایی بدون وضعیت سطح پایین معرفی شد. این میاناهای برنامهسازی کاربردی (I63bf7)
- ترکیببندی Recompose دیگر یک انتزاع مفید نیست. بیشتر بازآراییها باید درنتیجه تخصیصهای MutableState انجام شود. برای هر چیزی فراتر از آن، توصیه میشود از تابع
invalidateبرای راهاندازی یک ترکیب مجدد از محدوده فعلی استفاده کنید. (Ifc992) - استفاده از کلاس Px در کلاسهای مختلف compose بهعنوان بخشی از تلاش بزرگ بازسازی برای تکیه کردن فقط بر Dp و انواع اولیه برای پارامترهای پیکسل جایگزین شد. کلاس Px بهطور کامل حذف شد (I3ff33)
- جایگزین کردن استفاده از کلاس Px در کلاسهای مختلف ترکیب بهعنوان بخشی از تلاش بزرگ بازسازی برای تکیه کردن فقط بر Dp و انواع اولیه برای پارامترهای پیکسل (Id3434)
- اکنون محو شدن متقاطع میتواند با مقدار تهی بهعنوان مقدار اولیه کار کند (Iad6a4، b/155947711)
- جایگزین کردن استفاده از کلاس Px در کلاسهای مختلف ترکیب بهعنوان بخشی از تلاش بزرگ بازسازی برای تکیه کردن فقط بر Dp و انواع ابتدایی برای پارامترهای پیکسل (I19d02)
- پیادهسازیهای CanvasScope ادغام شد بنابراین اکنون فقط DrawScope و ContentDrawScope وجود دارد نام CanvasScope به DrawScope تغییر کرد. DrawScope بهروزرسانی شد تا واسط Density را پیادهسازی کند و LayoutDirection را ارائه دهد زیرکلاس DrawScope در ContentDrawScope حذف شد Painter و PainterModifier بهروزرسانی شدهاند تا دیگر خودشان ویژگی RTL را حفظ نکنند زیرا DrawScope این ویژگی را ازقبل بدون ارائه دستی آن ارائه میدهد (I1798e)
- میاناهای برنامهسازی کاربردی سطح بالاتر ترکیب بهروزرسانیشده که «بوم نقاشی» را آشکار میکند بهجای آن «محدوده بوم نقاشی» را آشکار میکند. این کار نیاز مصرفکنندگان به نگهداری اشیاء Paint خود را برطرف میکند. مصرفکنندگانی که هنوز به Canvas نیاز دارند میتوانند از روش افزونه drawCanvas استفاده کنند که برای صدور فرمانهای طراحی با Canvas زیرین بازخوانی ارائه میدهد. (I80afd)
- پارامترهای verticalGravity و horizontalGravity را به ترتیب به «ردیف» و «ستون» اضافه کرد. (I7dc5a)
- نام واحد ui-text به ui-text-core تغییر کرد (I57dec)
- بهبود دادن DrawModifier API:
- محدوده گیرنده را برای draw() به ContentDrawScope تغییر داد
- همه پارامترهای draw() برداشته شد
- DrawScope همان رابط کاربری CanvasScope سابق را دارد
- ContentDrawScope روش drawContent() دارد (Ibaced، b/152919067)
-
runOnIdleComposeوrunOnUiThreadاکنون کارکردهای سراسری هستند بهجای روشهایی در ComposeTestRule. (Icbe8f) - عملگرهای نماینده دارایی [Mutable]State به افزونهها منتقل شدند
تا از بهینهسازیهای نماینده دارایی Kotlin 1.4 پشتیبانی کنند. برای ادامه استفاده از
by state { ... }یاby mutableStateOf(...)، تماسگیرندگان باید وارد کردنها را اضافه کنند. (I5312c) - ColoredRect منسوخ شده است. درعوض از
Box(Modifier.preferredSize(width, height).drawBackground(color))استفاده کنید. (I499fa، b/152753731) - جایگزین کردن «اصلاحگر بهعلاوه اپراتور» با توابع افزونه کارخانه (I225e4)
- ترکیببندی Center منسوخ شده است. باید با اصلاحگر LayoutSize.Fill + LayoutAlign.Center یا با یکی از تابعهای ترکیبپذیر Box یا Stack با اصلاحگرهای مناسب اعمالشده جایگزین شود (Idf5e0)
- نام LayoutFlexible به LayoutWeight تغییر کرد. نام پارامتر «محکم» به «پر کردن» تغییر کرد. (If4738)
- تابع ترکیبپذیر «ماتی» با اصلاحگر drawOpacity جایگزین شده است. (I5fb62)
- آزمایشهای استفادهکننده از AndroidComposeTestRule اکنون ساعت پویانمایی را در ریشه ترکیب ارائه میدهد که به آن امکان میدهد بهصورت دستی متوقف، ازسر گرفته، و پیش برود. (Id54c5)
- پشتیبانی از جهت راستبهچپ در اصلاحگر LayoutPadding (I9e8da)
- Density و DensityScope در یک میانای واحد ادغام شدند. اکنون بهجای ambientDensity() میتوانید از DensityAmbient.current استفاده کنید. بهجای withDensity(density) فقط with(density) (I11cb1)
- روشهای کپی به انواع مختلف کلاس درونخطی ازجمله موارد زیر اضافه شد:
- آفست
- اندازه
- شعاع
- حرکت
- TransformOrigin
- روش شیء همراه Size.copy منسوخ شده است بهنفع روش کپی نمونه (Ife290، b/159905651)
- androidx.compose.ViewComposer به androidx.ui.node.UiComposer منتقل شده است
androidx.compose.Emittable برداشته شده است. با ComponentNode اضافی بود.
androidx.compose.ViewAdapters برداشته شده است. دیگر مورد استفاده پشتیبانیشدهای نیست.
Compose.composeInto منسوخ شده است. درعوض از
setContentیاsetViewContentاستفاده کنید. Compose.disposeComposition منسوخ شده است. بهجای آن از روشdisposeدرCompositionبرگشتی ازsetContentاستفاده کنید. androidx.compose.Compose.subcomposeInto به androidx.ui.core.subcomposeInto منتقل شده است نام ComponentNode#emitInsertAt به ComponentNode#insertAt تغییر کرده است نام ComponentNode#emitRemoveAt به ComponentNode#removeAt تغییر کرده است نام ComponentNode#emitMode به ComponentNode#move تغییر کرده است (Idef00)