אנימציה ב-Compose
androidx.compose.animation
androidx.compose.animation.core
androidx.compose.animation.graphics
(לעיון במסמכי ההפניה של ה-API לכל חבילות ה-Compose)
| העדכון האחרון | גרסה יציבה | גרסה מועמדת להפצה | גרסת בטא | גרסת אלפא |
|---|---|---|---|---|
| 11 בפברואר 2026 | 1.10.3 | - | - | 1.11.0-alpha05 |
מבנה
Compose הוא שילוב של 7 מזהי קבוצה ב-Maven בתוך androidx. כל קבוצה מכילה קבוצת משנה ממוקדת של פונקציות, ולכל אחת מהן יש קבוצה משלה של הערות על הגרסה.
בטבלה הזו מוסברות הקבוצות ומופיעים קישורים לכל קבוצה של הערות מוצר.
| קבוצה | תיאור |
|---|---|
| compose.animation | ליצור אנימציות באפליקציות Jetpack Compose כדי לשפר את חוויית המשתמש. |
| compose.compiler | שינוי פונקציות עם הערה @Composable והפעלת אופטימיזציות באמצעות פלאגין של Kotlin Compiler. |
| compose.foundation | כתיבת אפליקציות ב-Jetpack Compose באמצעות אבני בניין מוכנות לשימוש והרחבת הבסיס כדי ליצור רכיבים משלכם למערכת העיצוב. |
| compose.material | אפשר לבנות ממשקי משתמש של Jetpack פיתוח נייטיב עם רכיבי Material Design מוכנים לשימוש. זוהי נקודת הכניסה ברמה הגבוהה ביותר של Compose, שנועדה לספק רכיבים שתואמים לאלה שמתוארים בכתובת www.material.io. |
| compose.material3 | אפשר ליצור ממשקי משתמש של Jetpack פיתוח נייטיב באמצעות רכיבי Material Design 3, הדור הבא של Material Design. Material 3 כולל רכיבים ועיצובים מעודכנים, ותכונות התאמה אישית של Material You כמו צבע דינמי. הוא מתוכנן להיות עקבי עם הסגנון החזותי החדש של Android 12 וממשק המשתמש של המערכת. |
| compose.runtime | אבני הבניין הבסיסיות של מודל התכנות וניהול המצב של Compose, וזמן הריצה המרכזי של פלאגין מהדר Compose לטירגוט. |
| compose.ui | רכיבים בסיסיים בממשק המשתמש של Compose שנדרשים כדי ליצור אינטראקציה עם המכשיר, כולל פריסה, ציור וקלט. |
הצהרה על יחסי תלות
כדי להוסיף תלות ב-Compose, צריך להוסיף את מאגר Google Maven לפרויקט. מידע נוסף זמין במאמר בנושא מאגר Maven של Google.
אתם יכולים להוסיף את יחסי התלות של הארטיפקטים שאתם צריכים בקובץ build.gradle של האפליקציה או המודול:
Groovy
dependencies { implementation "androidx.compose.animation:animation:1.10.3" } android { buildFeatures { compose true } composeOptions { kotlinCompilerExtensionVersion = "1.5.15" } kotlinOptions { jvmTarget = "1.8" } }
Kotlin
dependencies { implementation("androidx.compose.animation:animation:1.10.3") } android { buildFeatures { compose = true } composeOptions { kotlinCompilerExtensionVersion = "1.5.15" } kotlinOptions { jvmTarget = "1.8" } }
מידע נוסף זמין במאמר הוספת יחסי תלות ב-build.
משוב
המשוב שלכם עוזר לנו לשפר את Jetpack. נשמח לדעת אם גיליתם בעיות חדשות או אם יש לכם רעיונות איך לשפר את הספרייה הזו. כדאי לעיין בבעיות הידועות בספרייה הזו לפני שמדווחים על בעיה. כדי להוסיף הצבעה בדיווח על בעיה קיימת, לוחצים על כפתור הכוכב.
מידע נוסף זמין במאמרי העזרה בנושא Issue Tracker.
גרסה 1.11
גרסה 1.11.0-alpha05
11 בפברואר 2026
androidx.compose.animation:animation-*:1.11.0-alpha05 מופץ. גרסה 1.11.0-alpha05 מכילה את השמירות האלה.
גרסה 1.11.0-alpha04
28 בינואר 2026
androidx.compose.animation:animation-*:1.11.0-alpha04 מופץ. גרסה 1.11.0-alpha04 מכילה את השמירות האלה.
גרסה 1.11.0-alpha03
14 בינואר 2026
androidx.compose.animation:animation-*:1.11.0-alpha03 מופץ. גרסה 1.11.0-alpha03 מכילה את השמירות האלה.
תכונות חדשות
- הוספנו קבוצה חדשה של יכולות ניפוי באגים חזותי, שמאפשרת לראות את המידע שקשור לרכיבים משותפים ול-
Modifier.animatedBounds. המידע הזה כולל: גבולות היעד, המסלול של אנימציית הגבולות, מספר ההתאמות שנמצאו, אם המעבר פעיל וכו'.
שינויים ב-API
- הוספנו ממשקי API חדשים:
LookaheadAnimationVisualDebugging, CustomizedLookaheadAnimationVisualDebuggingו-LookaheadAnimationVisualDebugConfig, כדי לעזור בניפוי באגים של גבולות אנימציה ואנימציות של רכיבים משותפים. (Id5575, b/390011686, b/466169919)
תיקוני באגים
- הגדרת שורש מעבר משותף לפני שאילתת הגבולות. (77d59c)
גרסה 1.11.0-alpha02
17 בדצמבר 2025
androidx.compose.animation:animation-*:1.11.0-alpha02 מופץ. גרסה 1.11.0-alpha02 מכילה את השמירות האלה.
גרסה 1.11.0-alpha01
3 בדצמבר 2025
androidx.compose.animation:animation-*:1.11.0-alpha01 מופץ. גרסה 1.11.0-alpha01 מכילה את השמירות האלה.
תיקוני באגים
- קבלת מיקום עבור
sharedElementsרק אםSharedTransitionLayoutמצורף (I2a035)
גרסה 1.10
גרסה 1.10.3
11 בפברואר 2026
androidx.compose.animation:animation-*:1.10.3 מופץ. גרסה 1.10.3 מכילה את השמירות האלה.
תיקוני באגים
- תוקנה הקריסה שנגרמה על ידי מקרה קצה שבו צומת התוכן המשותף מנותק לפני ששורש המעבר המשותף הוצב. (121310)
גרסה 1.10.2
28 בינואר 2026
androidx.compose.animation:animation-*:1.10.2 מופץ. גרסה 1.10.2 מכילה את השמירות האלה.
גרסה 1.10.1
14 בינואר 2026
androidx.compose.animation:animation-*:1.10.1 מופץ. גרסה 1.10.1 מכילה את השמירות האלה.
גרסה 1.10.0
3 בדצמבר 2025
androidx.compose.animation:animation-*:1.10.0 מופץ. גרסה 1.10.0 מכילה את השמירות האלה.
שינויים חשובים מאז גרסה 1.9.0:
- ממשקי API משותפים למעברים יציבים בגרסה 1.10
- API חדש
Modifier.skipToLookaheadPositionלפריסות ב-SharedTransitionScopeכדי לדלג למיקום היעד במקום להנפיש שינויים במיקום (9a88f4) - תמיכה בהפעלה או בהשבתה דינמית של רכיבים משותפים (07680e)
- API חדש לתמיכה במהירות התחלתית להפעלת מעבר של רכיב משותף באמצעות תנועת החלקה (b0afe2)
- חדש ב-
EnterTransitionוב-ExitTransition: אנימציה של שכבת מסך ל-AnimatedVisibilityול-AnimatedContent(0f6e7c)
גרסה 1.10.0-rc01
19 בנובמבר 2025
androidx.compose.animation:animation-*:1.10.0-rc01 מופץ. גרסה 1.10.0-rc01 מכילה את השמירות האלה.
שינויים ב-API
- אפשרויות
unveilInו-veilOutזמינות עכשיו ב-EnterExitTransitions. כך אפשר להנפיש שכבת-על לפני התוכן שנכנס או יוצא. (If26fe)
תיקוני באגים
- תמיכה במעקב אחר גבולות באמצעות ניתוק וחיבור מחדש של
sharedElement(be0e9e) - הופכים את מפת הרכיבים המשותפים לניתנת לצפייה כדי לעקוב אחרי הפעילות של המעבר. (1fc2ec)
גרסה 1.10.0-beta02
5 בנובמבר 2025
androidx.compose.animation:animation-*:1.10.0-beta02 מופץ. גרסה 1.10.0-beta02 מכילה את השמירות האלה.
גרסה 1.10.0-beta01
22 באוקטובר 2025
androidx.compose.animation:animation-*:1.10.0-beta01 מופץ. גרסה 1.10.0-beta01 מכילה את השמירות האלה.
שינויים ב-API
- הוסרה שיטת היצירה
SharedContentConfigשמקבלת ביטוי למדה שמציין אם צריך להפעיל את הרכיב המשותף. lookheadScopeCoordinatesAPI עודכן עםLookaheadScopeכהיקף הנמען, והקואורדינטות של המקור הן הפרמטר. (Id1fc2, b/452416806) - הממשק של
BoundsTransformעודכן כדי שיהיה עקבי עםSizeTransform. (Ia46f2, b/343696350) - ממשק ה-API
ScaleToBoundsשהוצא משימוש הוסר. במקומה צריך להשתמש במדיניותscaleToBounds. (I17296)
גרסה 1.10.0-alpha05
8 באוקטובר 2025
androidx.compose.animation:animation-*:1.10.0-alpha05 מופץ. גרסה 1.10.0-alpha05 מכילה את השמירות האלה.
שינויים ב-API
- ממשקי ה-API המשותפים למעבר יציבים עכשיו. מידע נוסף זמין במדריך לרכיבים משותפים. (I7167e).
גרסה 1.10.0-alpha04
24 בספטמבר 2025
androidx.compose.animation:animation-*:1.10.0-alpha04 מופץ. גרסה 1.10.0-alpha04 מכילה את השמירות האלה.
שינויים ב-API
- עדכנו את השמות של ממשקי ה-API שקשורים ל-
PlaceHolderSize. (I037d8, b/343696350) - API חדש למעבר בין רכיבים משותפים, לתמיכה במהירות התחלתית כדי להמשיך את מהירות התנועה של המחוות ברכיבים משותפים. (I91be9)
גרסה 1.10.0-alpha03
10 בספטמבר 2025
androidx.compose.animation:animation-*:1.10.0-alpha03 מופץ. גרסה 1.10.0-alpha03 מכילה את השמירות האלה.
שינויים ב-API
-
Modifier.skipToLookaheadSizeמשתמש עכשיו ב-lambda שמופעל כברירת מחדל, שמאפשר דילוג על גודל רק כשמעבר משותף פעיל, כמו ב-Modifier.skipToLookaheadPosition. (Ibe0f5, b/432485585)
גרסה 1.10.0-alpha02
27 באוגוסט 2025
androidx.compose.animation:animation-*:1.10.0-alpha02 מופץ. גרסה 1.10.0-alpha02 מכילה את השמירות האלה.
גרסה 1.10.0-alpha01
13 באוגוסט 2025
androidx.compose.animation:animation-*:1.10.0-alpha01 מופץ. גרסה 1.10.0-alpha01 מכילה את השמירות האלה.
תכונות חדשות
- API חדש שמאפשר להפעיל ולהשבית באופן דינמי רכיבים משותפים, וגם מאפשר לקחת בחשבון אם כבר מתבצע מעבר מתמשך של רכיב משותף.
- API חדש להגדרת גבולות יעד חלופיים כשאלמנט היעד המשותף מושמד במהלך המעבר.
- API חדש לקבלת
LayoutCoordinatesשלLookaheadScope. (I18dd4, b/409819304, b/395670637) - המשנה החדש
Modifier.skipToLookaheadPositionב-SharedTransitionScopeמאפשר להצמיד פריסה למיקום היעד במהלך מעבר משותף. (I88734)
שינויים ב-API
- פשוט יותר
renderInSharedTransitionOverlayכי הסרנו אתclipInOverlayDuringTransitionlambda, שלא נעשה בו שימוש לעיתים קרובות. הוספנו שיטת factory חדשה ל-SharedContentConfig. (Id01b2) - נוספה קבוצה של הגדרות ברירת מחדל לרכיב משותף, לגבולות משותפים ולהגדרות
renderInSharedTransitionOverlay. אפשר עכשיו לגשת לברירות המחדל האלה באמצעות ממשקי API ציבוריים. (Id23cc) - השם של ResizeMode שונה ל-
scaleToBounds(I5ac50)ScaleToBounds
תיקוני באגים
- העברת ברירת המחדל של minSdk מ-API 21 ל-API 23 (Ibdfca, b/380448311, b/435705964, b/435705223)
גרסה 1.9
גרסה 1.9.5
19 בנובמבר 2025
androidx.compose.animation:animation-*:1.9.5 מופץ. גרסה 1.9.5 מכילה את השמירות האלה.
גרסה 1.9.4
22 באוקטובר 2025
androidx.compose.animation:animation-*:1.9.4 מופץ. גרסה 1.9.4 מכילה את השמירות האלה.
גרסה 1.9.3
8 באוקטובר 2025
androidx.compose.animation:animation-*:1.9.3 מופץ. גרסה 1.9.3 מכילה את השמירות האלה.
גרסה 1.9.2
24 בספטמבר 2025
androidx.compose.animation:animation-*:1.9.2 מופץ. גרסה 1.9.2 מכילה את השמירות האלה.
גרסה 1.9.1
10 בספטמבר 2025
androidx.compose.animation:animation-*:1.9.1 מופץ. גרסה 1.9.1 מכילה את השמירות האלה.
תיקוני באגים
- תיקון האתחול של האנימציה עבור
sharedElementWithCallerManagedVisibility. (fa29de)
גרסה 1.9.0
13 באוגוסט 2025
androidx.compose.animation:animation-*:1.9.0 מופץ. גרסה 1.9.0 מכילה את השמירות האלה.
גרסה 1.9.0-rc01
30 ביולי 2025
androidx.compose.animation:animation-*:1.9.0-rc01 מופץ. גרסה 1.9.0-rc01 מכילה את השמירות האלה.
גרסה 1.9.0-beta03
16 ביולי 2025
androidx.compose.animation:animation-*:1.9.0-beta03 מופץ. גרסה 1.9.0-beta03 מכילה את השמירות האלה.
גרסה 1.9.0-beta02
2 ביולי 2025
androidx.compose.animation:animation-*:1.9.0-beta02 מופץ. גרסה 1.9.0-beta02 מכילה את השמירות האלה.
גרסה 1.9.0-beta01
18 ביוני 2025
androidx.compose.animation:animation-*:1.9.0-beta01 מופץ. גרסה 1.9.0-beta01 מכילה את השמירות האלה.
גרסה 1.9.0-alpha04
4 ביוני 2025
androidx.compose.animation:animation-*:1.9.0-alpha04 מופץ. גרסה 1.9.0-alpha04 מכילה את השמירות האלה.
גרסה 1.9.0-alpha03
20 במאי 2025
androidx.compose.animation:animation-*:1.9.0-alpha03 מופץ. גרסה 1.9.0-alpha03 מכילה את השמירות האלה.
גרסה 1.9.0-alpha02
7 במאי 2025
androidx.compose.animation:animation-*:1.9.0-alpha02 מופץ. גרסה 1.9.0-alpha02 מכילה את השמירות האלה.
תכונות חדשות
- שיפור משמעותי בתמיכה בגלילה או בגרירה של רכיבים משותפים. במילים אחרות, כשמגללים אלמנט משותף במעבר, דלתא הגלילה תוחל ישירות על האלמנט המשותף, במקום לגרום לאלמנטים המשותפים לרדוף אחרי היעד החדש. (cacf7b)
גרסה 1.9.0-alpha01
23 באפריל 2025
androidx.compose.animation:animation-*:1.9.0-alpha01 מופץ. גרסה 1.9.0-alpha01 מכילה את השמירות האלה.
שינויים בהתנהגות
- בדיקות ה-Lint שמופצות עם Compose דורשות עכשיו גרסת AGP מינימלית של 8.8.2. אם אין לכם אפשרות לשדרג את AGP, אתם יכולים לשדרג את Lint בנפרד באמצעות
android.experimental.lint.version=8.8.2(או גרסה חדשה יותר) בקובץgradle.properties. כדי להריץ בדיקות lint של Compose בתוך סביבת הפיתוח המשולבת (IDE), נדרשת גרסה Ladybug של Android Studio או גרסה חדשה יותר.
תכונות חדשות
- שיפור ביצועי הגלילה ברכיבים משותפים (ea4f1f)
שינויים ב-API
- כדי להשתמש בפרויקטים שפורסמו עם Kotlin 2.0, צריך להשתמש ב-KGP 2.0.0 או בגרסה חדשה יותר. (Idb6b5)
- המאפיינים
TabRowו-ScrollableTabRowהוצאו משימוש, ועכשיו יש מאפיינים ראשיים ומשניים לכל אחד מהם. שורות הכרטיסיות הראשיות והמשניות הן בעלות ביצועים טובים יותר ומדויקות יותר בהתאם למפרט. (I918e2) - נוספה
LocalResourcesקומפוזיציה מקומית למשאבי השאילתה. הקומפוננטה CallingLocalResources.currentתורכב מחדש כשההגדרה תשתנה, כך שקריאות ל-API כמוstringResource()יחזירו ערכים מעודכנים (I50c13, b/274786917)
תיקוני באגים
- מוודאים שרכיבים משותפים מושמטים מהשכבת-על כשהמעבר מסתיים (35f359)
- הסרת קומפוזיציה מחדש מיותרת במעבר (988923)
- תיקון של טיפול בהפרעות במעבר של ילדים (8aed52)
- חשוב לוודא שהמעבר מתאפס כשמספקים
TransitionStateחדש (57820a)
External Contribution
- מתוך Compose
1.8.1: End animations inSeekableTransitionStateif already past new duration by Steven Schoen. (0c832c)
גרסה 1.8
גרסה 1.8.3
18 ביוני 2025
androidx.compose.animation:animation-*:1.8.3 מופץ. גרסה 1.8.3 מכילה את השמירות האלה.
גרסה 1.8.2
20 במאי 2025
androidx.compose.animation:animation-*:1.8.2 מופץ. גרסה 1.8.2 מכילה את השמירות האלה.
גרסה 1.8.1
7 במאי 2025
androidx.compose.animation:animation-*:1.8.1 מופץ. גרסה 1.8.1 מכילה את השמירות האלה.
External Contribution
- אנימציות סיום ב-
SeekableTransitionStateאם כבר עבר משך הזמן החדש. תודה, Steven Schoen! (fbcdf7)
גרסה 1.8.0
23 באפריל 2025
androidx.compose.animation:animation-*:1.8.0 מופץ. גרסה 1.8.0 מכילה את השמירות האלה.
שינויים חשובים מאז גרסה 1.7.0
- ב פוסט הזה בבלוג מוסבר על שינויים חשובים בגרסה 1.8.0
- API חדש של
Modifier.animateBoundsלהנפשת שינויים בגודל ובמיקום במסגרת של חיזוי. (94b939) - ממשקי API סופיים לפריימים מרכזיים עם קשתות וספלינים (89e119)
- תמיכה בחיפוש מראש ב-
LazyGridוב-Pager. ההבדלים כוללים את ההבחנה בין מעבר lookahead לבין מעבר approach בגלילה, בהרכב/סילוק של פריטים ובאנימציה של פריטים, ושימוש במעבר lookahead כמקור אמין לגבי גלילה ויעד אנימציה של פריטים. - עדכנו את השמות של הפרמטרים
sharedElementמ-state ל-sharedContentStateכדי לשמור על עקביות בין ממשקי ה-API של רכיבים משותפים. (9e7df5) - חבילת
AnimatedImageVectorממשקי ה-API יציבה עכשיו.(69d7e0)
גרסה 1.8.0-rc03
9 באפריל 2025
androidx.compose.animation:animation-*:1.8.0-rc03 מופץ. גרסה 1.8.0-rc03 מכילה את השמירות האלה.
גרסה 1.8.0-rc02
26 במרץ 2025
androidx.compose.animation:animation-*:1.8.0-rc02 מופץ. גרסה 1.8.0-rc02 מכילה את השמירות האלה.
גרסה 1.8.0-rc01
12 במרץ 2025
androidx.compose.animation:animation-*:1.8.0-rc01 מופץ. גרסה 1.8.0-rc01 מכילה את השמירות האלה.
תיקוני באגים
- מעבר קבוע של ילד מסומן בטעות כהפרעה. (3fa2ce)
גרסה 1.8.0-beta03
26 בפברואר 2025
androidx.compose.animation:animation-*:1.8.0-beta03 מופץ. גרסה 1.8.0-beta03 מכילה את השמירות האלה.
גרסה 1.8.0-beta02
12 בפברואר 2025
androidx.compose.animation:animation-*:1.8.0-beta02 מופץ. גרסה 1.8.0-beta02 מכילה את השמירות האלה.
גרסה 1.8.0-beta01
29 בינואר 2025
androidx.compose.animation:animation-*:1.8.0-beta01 מופץ. גרסה 1.8.0-beta01 מכילה את השמירות האלה.
גרסה 1.8.0-alpha08
15 בינואר 2025
androidx.compose.animation:animation-*:1.8.0-alpha08 מופץ. גרסה 1.8.0-alpha08 מכילה את השמירות האלה.
תיקוני באגים
- תוקנה אנימציה שגויה של מיקום מ-
animateBoundsב-LazyGridבגלל איפוס שלMotionFrameOfReferencePlacement. (16193b) - תוקנה שאילתה פנימית ב-
SharedTransitionLayoutעל ידי הפניה מחדש של השאילתה הפנימית למעבר של חיזוי מראש משורש חיזוי מראש ברמה העליונה. (a07d12) - נוספו תגי
@paramשהיו חסרים במסמכים. (e5cf67)
גרסה 1.8.0-alpha07
11 בדצמבר 2024
androidx.compose.animation:animation-*:1.8.0-alpha07 מופץ. גרסה 1.8.0-alpha07 מכילה את השמירות האלה.
תכונות חדשות
- תמיכה בחיפוש מראש ב-Pager, על ידי הבחנה בין מעבר חיפוש מראש לבין מעבר גישה לשמירת פריטים ולשימוש בגלילה. (b/371802474)
תיקוני באגים
- תוקנה קריסה נדירה שמתרחשת כשמרכיב משותף מורכב אבל אף פעם לא נמדד או ממוקם. כדי לפתור את הבעיה, נדרש שהמרכיב המשותף יעבור רינדור במקום לפחות פעם אחת לפני שהוא עובר רינדור בשכבת-על. (b/371802474)
גרסה 1.8.0-alpha06
13 בנובמבר 2024
androidx.compose.animation:animation-*:1.8.0-alpha06 מופץ. גרסה 1.8.0-alpha06 מכילה את השמירות האלה.
שינויים ב-API
- השמות של הפרמטרים
sharedElementעודכנו מ-stateל-sharedContentStateכדי לשמור על עקביות בין ממשקי ה-API של רכיבים משותפים. (I5694c, b/375351468) - חבילת ממשקי ה-API של
AnimatedImageVectorיציבה עכשיו. (I7174b, b/261436267)
גרסה 1.8.0-alpha05
30 באוקטובר 2024
androidx.compose.animation:animation-*:1.8.0-alpha05 מופץ. גרסה 1.8.0-alpha05 מכילה את השמירות האלה.
תכונות חדשות
- יש עכשיו תמיכה בתכונה Lookahead ב-
LazyGrid. ההבדלים כוללים את ההבחנה בין מעבר lookahead לבין מעבר approach בגלילה, בהרכב/סילוק של פריטים ובאנימציה של פריטים, ושימוש במעבר lookahead כמקור אמין לגבי גלילה ויעד אנימציה של פריטים.
תיקוני באגים
- עדכון של מצבים פנימיים לשינוי הגודל של
AnimatedContentכשיוצרים מחדש את המעבר. כך אפשר לוודא שפרטי גודל היעד תמיד יהיו עדכניים. (b/372512085)
גרסה 1.8.0-alpha04
16 באוקטובר 2024
androidx.compose.animation:animation-*:1.8.0-alpha04 מופץ. גרסה 1.8.0-alpha04 מכילה את השמירות האלה.
תיקוני באגים
- תוקן באג שגרם לקריסה של חלק מעקומות ההאצה וההאטה בשברירי זמן מסוימים.
- תוקן באג שגרם ליישור לא תקין של
Modifier.animateContentSizeב-RTL. (Idae6b, b/372055503)
גרסה 1.8.0-alpha03
2 באוקטובר 2024
androidx.compose.animation:animation-*:1.8.0-alpha03 מופץ. גרסה 1.8.0-alpha03 מכילה את השמירות האלה.
שינויים ב-API
- עדכון גרסת Kotlin ל-1.9 (I1a14c)
תיקוני באגים
- תוקנה בעיה באנימציה של גודל
AnimatedContent. האנימציה מתחילה מהגודל הנוכחי כדי להבטיח את המשכיות שלה.
גרסה 1.8.0-alpha02
18 בספטמבר 2024
androidx.compose.animation:animation-*:1.8.0-alpha02 מופץ. גרסה 1.8.0-alpha02 מכילה את השמירות האלה.
גרסה 1.8.0-alpha01
4 בספטמבר 2024
androidx.compose.animation:animation-*:1.8.0-alpha01 מופץ. גרסה 1.8.0-alpha01 מכילה את השמירות האלה.
תכונות חדשות
- API חדש של
Modifier.animateBoundsלהנפשת שינויים בגודל ובמיקום במסגרת של חיזוי. 94b9394
שינויים ב-API
- הסרת דגלים ניסיוניים ב-Keyframes עם קשתות וספלינים (89e1199)
תיקוני באגים
- דילוג על הלוגיקה של
placeHolderSizeאם לא נמצאה התאמה (77c0160) - הגבלת זמן ההפעלה ב-
AndroidFlingSplineכדי למנוע קריסות בגלל זמן הפעלה שלא עולה באופן מונוטוני(9d47587) - תיקון
SharedTransitionScopeשלא מציג פריטים בתנאים מסוימים (b41077b6)
External Contribution
- Prevent setting seekable transition
playTimewhen no transition is running by Steven Schoen. (c2e6e7e6)
גרסה 1.7
גרסה 1.7.8
12 בפברואר 2025
androidx.compose.animation:animation-*:1.7.8 מופץ. גרסה 1.7.8 מכילה את השמירות האלה.
גרסה 1.7.7
29 בינואר 2025
androidx.compose.animation:animation-*:1.7.7 מופץ. אין שינויים מגרסה 1.7.6.
11 בדצמבר 2024
androidx.compose.animation:animation-*:1.7.6 מופץ. גרסה 1.7.6 מכילה את השמירות האלה.
גרסה 1.7.5
30 באוקטובר 2024
androidx.compose.animation:animation-*:1.7.5 מופץ. גרסה 1.7.5 מכילה את השמירות האלה.
תיקוני באגים
- תוקן באג שגרם ליישור לא תקין של
Modifier.animateContentSizeב-RTL. (Idae6b, b/372055503)
גרסה 1.7.4
16 באוקטובר 2024
androidx.compose.animation:animation-*:1.7.4 מופץ. גרסה 1.7.4 מכילה את השמירות האלה.
גרסה 1.7.3
2 באוקטובר 2024
androidx.compose.animation:animation-*:1.7.3 מופץ. גרסה 1.7.3 מכילה את השמירות האלה.
גרסה 1.7.2
18 בספטמבר 2024
androidx.compose.animation:animation-*:1.7.2 מופץ. גרסה 1.7.2 מכילה את השמירות האלה.
External Contribution
- מונעים הגדרה של מעבר שניתן להזזה
playTimeכשלא מתבצע מעבר. תודה, Steven Schoen! (c2e6e7e6)
גרסה 1.7.1
10 בספטמבר 2024
- לא חלים שינויים בפריטי מידע של Android.
-desktopארטיפקטים הוסרו ו--jvmStubsו--linuxx64Stubsארטיפקטים נוספו. אף אחד מהיעדים האלה לא מיועד לשימוש, הם משמשים כ-placeholder כדי לעזור למאמצי Jetbrains Compose.
גרסה 1.7.0
4 בספטמבר 2024
androidx.compose.animation:animation-*:1.7.0 מופץ.
שינויים חשובים מאז גרסה 1.6.0
שינויים חשובים בגרסה 1.7.0 מפורטים בפוסט הזה בבלוג.
ממשקי API חדשים למעברים של רכיבים משותפים
- ממשקי API חדשים למעברים של רכיבים משותפים מחכים לשימוש ולמשוב שלכם. ממשקי ה-API הניסיוניים החדשים האלה מאפשרים לתייג פריסות כפריסות משותפות בעץ הפריסה באמצעות שינויי המאפיינים שסופקו, וכך ליצור שינוי חלק בגבולות כשקבוצה אחת של תוכן משותף יוצאת וקבוצה אחרת נכנסת. (Icb0b9)
- תכונות חדשות של
scaleInSharedContentToBoundsו-scaleOutSharedContentToBoundsלהרחבת התוכן ב-sharedBounds(I731c1) SharedTransitionScopeExperimental הוא עכשיו ממשק ולא מחלקה. (Iaf856)- חדש
resizeModes(ScaleToBoundsו-RemeasureToBounds) ל-sharedBounds: אפשר לבחור בין שינוי גודל לבין מדידה מחדש. ממשקי ה-API הקודמים שלscaleIn/OutSharedContentToBoundsהוצאו משימוש. (I0d41a)
שיפורים בממשקי API קיימים:
- פרמטר חדש
Modifier.animateContentSizeשמקבל פרמטר נוסף להתאמה אישית של התוכן. (I5623a, b/269803907) - תכונה ניסיונית חדשה
DeferredTargetAnimationלהנפשת הגודל, המיקום או כל יעד אחר שלא ידוע במהלך יצירת המופע. (I60745) -
SeekableTransitionStateמחליף אתsnapTo()ב-seekTo(), ומוסיףsnapTo()שמשנה מיידית את המצב למצב יעד ללא אנימציה כלשהי. - עכשיו אפשר להעביר ערך
periodicBias(מספר עשרוני) ל-keyframesWithSpline, כך שהמהירות ההתחלתית והסופית של הספלין יהיו שוות. האפשרות הזו שימושית לאנימציות שחוזרות על עצמן באמצעות ספלינים. ההטיה מציינת כמה כל מהירות (ההתחלתית והסופית) משתנה כדי להשיג מחזוריות. (Ic1e6c, b/292114811)
ממשקי ה-API הבאים הפכו ליציבים או הוסרו:
-
AnimatedVisibilityScope.transitionהוא עכשיו API יציב. הגרסהModifier.animateEnterExit(..)יציבה. (I6c1d1) - גרסאות
ApproachLayoutModifierNodeו-Modifier.approachLayoutיציבות עכשיו, ויש גרסאות חדשותisMeasurementApproachInProgress()ו-isPlacementApproachInProgress()שמחליפות את הגרסאות הישנותisMeasurementApproachComplete()ו-isPlacementApproachComplete()בהתאמה. - הוסר משנה (modifier) שהוצא משימוש
intermediateLayout. (I3e91c) - ממשקי ה-API של
LookaheadScopeהפכו ליציבים. (I21507)
גרסה 1.7.0-rc01
21 באוגוסט 2024
androidx.compose.animation:animation-*:1.7.0-rc01 מופץ. גרסה 1.7.0-rc01 מכילה את השמירות האלה.
גרסה 1.7.0-beta07
7 באוגוסט 2024
androidx.compose.animation:animation-*:1.7.0-beta07 מופץ. גרסה 1.7.0-beta07 מכילה את השמירות האלה.
תיקוני באגים
- תוקן באג שגרם לכך שפריטי שכבת-על לא צוירו במהלך מעבר בתנאים מסוימים, שבדרך כלל כוללים שימוש ב-Navigation.
SharedTransitionScope(Id65ab, b/347520198)
גרסה 1.7.0-beta06
24 ביולי 2024
androidx.compose.animation:animation-*:1.7.0-beta06 מופץ. גרסה 1.7.0-beta06 מכילה את השמירות האלה.
תיקוני באגים
- תוקן באג שגרם לדליפה של מצבי מעבר ב-
SeekableTransitionעל ידי ניקוי תצפיות מ-SnapshotStateObserverבצורה תקינה כשמעבירים את המעבר לאשפה. (b9c7182) - תוקנו מקרים קיצוניים שבהם מעברים של צאצאים לא מסומנים כהושלמו כשההורה משלים. (dc42216)
גרסה 1.7.0-beta05
10 ביולי 2024
androidx.compose.animation:animation-*:1.7.0-beta05 מופץ. גרסה 1.7.0-beta05 מכילה את השמירות האלה.
תיקוני באגים
- עכשיו אפשר לקרוא את מאפיין המעבר
totalDurationNanosבצורה תקינה בתוךsnapshotFlow.
גרסה 1.7.0-beta04
26 ביוני 2024
androidx.compose.animation:animation-*:1.7.0-beta04 מופץ. גרסה 1.7.0-beta04 מכילה את השמירות האלה.
גרסה 1.7.0-beta03
12 ביוני 2024
androidx.compose.animation:animation-*:1.7.0-beta03 מופץ. גרסה 1.7.0-beta03 מכילה את השמירות האלה.
גרסה 1.7.0-beta02
29 במאי 2024
androidx.compose.animation:animation-*:1.7.0-beta02 מופץ. גרסה 1.7.0-beta02 מכילה את השמירות האלה.
גרסה 1.7.0-beta01
14 במאי 2024
androidx.compose.animation:animation-*:1.7.0-beta01 מופץ. גרסה 1.7.0-beta01 מכילה את השמירות האלה.
שינויים ב-API
- חדש
resizeModes(ScaleToBoundsו-RemeasureToBounds) ל-sharedBounds: אפשר לבחור בין שינוי גודל לבין מדידה מחדש. ממשקי ה-API הקודמים שלscaleIn/OutSharedContentToBoundsהוצאו משימוש. (I0d41a)
External Contribution
- התכונה הניסיונית
SharedTransitionScopeהיא עכשיו ממשק ולא מחלקה, מאת Steven Schoen. (Iaf856, b/338415048, b/338414702)
גרסה 1.7.0-alpha08
1 במאי 2024
androidx.compose.animation:animation-*:1.7.0-alpha08 מופץ. גרסה 1.7.0-alpha08 מכילה את השמירות האלה.
שינויים ב-API
- ממשקי ה-API
LookaheadScopeהפכו ליציבים. (I21507)
External Contribution
- Clear start animation time after
SeekableTransitionStateanimates/snaps by Steven Schoen (1ca89529)
גרסה 1.7.0-alpha07
17 באפריל 2024
androidx.compose.animation:animation-*:1.7.0-alpha07 מופץ. גרסה 1.7.0-alpha07 מכילה את השמירות האלה.
תכונות חדשות
- ממשקי API חדשים למעברים של רכיבים משותפים מחכים לשימוש ולמשוב שלכם. ממשקי ה-API הניסיוניים החדשים האלה מאפשרים לתייג פריסות כפריסות משותפות בעץ הפריסה באמצעות שינויי המאפיינים שסופקו, וכך ליצור שינוי חלק בגבולות כשקבוצה אחת של תוכן משותף יוצאת וקבוצה אחרת נכנסת. (Icb0b9)
- תכונות חדשות של
scaleInSharedContentToBoundsו-scaleOutSharedContentToBoundsלהרחבת התוכן ב-sharedBounds(I731c1)
שינויים ב-API
-
AnimatedVisibilityScope.transitionהוא עכשיו API יציב.Modifier.animateEnterExit(..)גם הפך ליציב. (I6c1d1) - גרסאות
ApproachLayoutModifierNodeו-Modifier.approachLayoutיציבות עכשיו, ויש גרסאות חדשותisMeasurementApproachInProgress()ו-isPlacementApproachInProgress()שמחליפות את הגרסאות הישנותisMeasurementApproachComplete()ו-isPlacementApproachComplete()בהתאמה. - הוסר משנה (modifier) שהוצא משימוש
intermediateLayout. (I3e91c) - עכשיו אפשר להעביר ערך
periodicBias(מספר עשרוני) ל-keyframesWithSpline, כך שהמהירות ההתחלתית והסופית של הספלין יהיו שוות. האפשרות הזו שימושית לאנימציות שחוזרות על עצמן באמצעות ספלינים. ההטיה מציינת כמה כל מהירות (ההתחלתית והסופית) משתנה כדי להשיג מחזוריות. (Ic1e6c, b/292114811)
תיקוני באגים
- תוקנו עקומות שיכוך שהיו חורגות או נמוכות מדי, שבעבר היו מוגבלות לערכים 0 עד 1 (I38747)
גרסה 1.7.0-alpha06
3 באפריל 2024
androidx.compose.animation:animation-*:1.7.0-alpha06 מופץ. גרסה 1.7.0-alpha06 מכילה את השמירות האלה.
תכונות חדשות
- נוספה תמיכה באנימציה של הופעה והיעלמות של פריטים ב-
LazyColumnוב-LazyRow. בעבר הייתה אפשרות להוסיף את המגבילModifier.animateItemPlacement()כדי לתמוך באנימציות של מיקום (סידור מחדש). הוצאנו משימוש את שינוי התצוגה הזה והשקנו שינוי תצוגה חדש ולא ניסיוני בשםModifier.animateItem(), שמאפשר לכם לתמוך בכל שלושת סוגי האנימציה: הופעה (הנפשה של כניסה), היעלמות (הנפשה של יציאה) ושינוי סדר. (I2d7f7, b/330152398, b/150812265)
תיקוני באגים
- שיפור הביצועים של
updateTransitionAPI.
גרסה 1.7.0-alpha05
20 במרץ 2024
androidx.compose.animation:animation-*:1.7.0-alpha05 מופץ. גרסה 1.7.0-alpha05 מכילה את השמירות האלה.
שינויים ב-API
-
SeekableTransitionStateמחליף אתsnapTo()ב-seekTo(), ומוסיףsnapTo()שמשנה מיידית את המצב למצב יעד ללא אנימציה כלשהי.
גרסה 1.7.0-alpha04
6 במרץ 2024
androidx.compose.animation:animation-*:1.7.0-alpha04 מופץ. גרסה 1.7.0-alpha04 מכילה את השמירות האלה.
שינויים ב-API
- API חדש
Path.reverse()לשינוי הכיוון של נתיב (I36348)
גרסה 1.7.0-alpha03
21 בפברואר 2024
androidx.compose.animation:animation-*:1.7.0-alpha03 מופץ. גרסה 1.7.0-alpha03 מכילה את השמירות האלה.
תכונות חדשות
- פרמטר חדש
Modifier.animateContentSizeשמקבל פרמטר נוסף להתאמה אישית של התוכן. (I5623a, b/269803907) - תכונה ניסיונית חדשה
DeferredTargetAnimationלהנפשת הגודל, המיקום או כל יעד אחר שלא ידוע במהלך יצירת המופע. (I60745)
גרסה 1.7.0-alpha02
7 בפברואר 2024
androidx.compose.animation:animation-*:1.7.0-alpha02 מופץ. גרסה 1.7.0-alpha02 מכילה את השמירות האלה.
תיקוני באגים
- תיקון בעיות תאימות עבור
KeyframesSpec. (I2bdf3, b/322214617) - תוקנה הבעיה שבה
Modifier.animateContentSizeלא מתאפס כמו שצריך כשמשתמשים בו ב-LazyList. (I070512, b/322525716) - תוקנה הבעיה
IllegalStateExceptionב-KeyframesSpecכשמשתמשים בחותמות זמן מחוץ לטווח. (I341b8, b/322839811)
גרסה 1.7.0-alpha01
24 בינואר 2024
androidx.compose.animation:animation-*:1.7.0-alpha01 מופץ. גרסה 1.7.0-alpha01 מכילה את השמירות האלה.
גרסה 1.6
גרסה 1.6.8
12 ביוני 2024
androidx.compose.animation:animation-*:1.6.8 מופץ. גרסה 1.6.8 מכילה את השמירות האלה.
גרסה 1.6.7
1 במאי 2024
androidx.compose.animation:animation-*:1.6.7 מופץ. גרסה 1.6.7 מכילה את השמירות האלה.
גרסה 1.6.6
17 באפריל 2024
androidx.compose.animation:animation-*:1.6.6 מופץ. לא בוצעו שינויים מאז הגרסה הקודמת
גרסה 1.6.5
3 באפריל 2024
androidx.compose.animation:animation-*:1.6.5 מופץ. גרסה 1.6.5 מכילה את השמירות האלה.
גרסה 1.6.4
20 במרץ 2024
androidx.compose.animation:animation-*:1.6.4 מופץ. גרסה 1.6.4 מכילה את השמירות האלה.
גרסה 1.6.3
6 במרץ 2024
androidx.compose.animation:animation-*:1.6.3 מופץ. גרסה 1.6.3 מכילה את השמירות האלה.
גרסה 1.6.2
21 בפברואר 2024
androidx.compose.animation:animation-*:1.6.2 מופץ. גרסה 1.6.2 מכילה את השמירות האלה.
גרסה 1.6.1
7 בפברואר 2024
androidx.compose.animation:animation-*:1.6.1 מופץ. גרסה 1.6.1 מכילה את השמירות האלה.
תיקוני באגים
- תיקון בעיות תאימות עבור
KeyframesSpec. (I2bdf3, b/322214617)
גרסה 1.6.0
24 בינואר 2024
androidx.compose.animation:animation-*:1.6.0 מופץ. גרסה 1.6.0 מכילה את השמירות האלה.
גרסה 1.6.0-rc01
10 בינואר 2024
androidx.compose.animation:animation-*:1.6.0-rc01 מופץ. גרסה 1.6.0-rc01 מכילה את השמירות האלה.
גרסה 1.6.0-beta03
13 בדצמבר 2023
androidx.compose.animation:animation-*:1.6.0-beta03 מופץ. גרסה 1.6.0-beta03 מכילה את השמירות האלה.
שינויים ב-API
- הסרנו באופן זמני את
scaleInToFitContainerואתscaleOutToFitContainerמ-AnimatedContentTransitionScopeכי הן דורשות חיפוש קדימה. הן יהיו זמינות כשהתכונה 'חיפוש מתקדם' תופעל כברירת מחדל או תהיה אופציונלית בגרסאות עתידיות.
גרסה 1.6.0-beta02
29 בנובמבר 2023
androidx.compose.animation:animation-*:1.6.0-beta02 מופץ. גרסה 1.6.0-beta02 מכילה את השמירות האלה.
גרסה 1.6.0-beta01
15 בנובמבר 2023
androidx.compose.animation:animation-*:1.6.0-beta01 מופץ. גרסה 1.6.0-beta01 מכילה את השמירות האלה.
שינויים ב-API
- השם
ExitTransition.Holdשונה ל-ExitTransition.KeepUntilTransitionsFinishedכדי להיות מפורש יותר. (I1c490) - עכשיו אפשר להשתמש ב-
keyframesWithSplineכדי לבצע אינטרפולציה של ערך N-ממדי באמצעות ספלינים מונוטוניים. הפונקציה הזו שימושית במיוחד לאינטרפולציה של ערכים מיקומיים כמוOffset,IntOffset,DpOffset. נוסף כ-API ניסיוני.
תיקוני באגים
- הוספנו תמיכה ב-renderer של מעבר צבעים קשתי ב-
ArcLine. (I4d5bb) - הטמעת equals ו-hashcode עבור
PageSize.Fixed. (Ie3ede, b/300134276) - תיקון בעיית תאימות בינארית בשינוי של חלון מוטבע. (Iee695)
- הסרנו את שכבת הליבה של Material עבור רכיב Chip/Button של Material3, כי המיקרו-בנצ'מרקים מראים ביצועים טובים יותר בלעדיה. (I55555)
גרסה 1.6.0-alpha08
18 באוקטובר 2023
androidx.compose.animation:animation-*:1.6.0-alpha08 מופץ. גרסה 1.6.0-alpha08 מכילה את השמירות האלה.
שינויים ב-API
- השימוש ב-
KeyframesSpecConfig#withהוצא משימוש לטובתKeyframesSpecConfig#using, ששומר על תבנית ה-builder. (I1d769)
גרסה 1.6.0-alpha07
4 באוקטובר 2023
androidx.compose.animation:animation-*:1.6.0-alpha07 מופץ. גרסה 1.6.0-alpha07 מכילה את השמירות האלה.
שינויים ב-API
- ל-Tabrows קבועים ול-Tabrows שאפשר לגלול בהם יש עכשיו וריאנטים ראשיים ומשניים. הם ממופים בצורה נכונה להתנהגות הצבע והאינדיקטור כפי שמוגדר ב-Material3.
-
PrimaryScrollableTabRowו-SecondaryScrollableTabRowחושפים עכשיו את מצב הגלילה. (Iec8f5, b/260572337)
גרסה 1.6.0-alpha06
20 בספטמבר 2023
androidx.compose.animation:animation-*:1.6.0-alpha06 מופץ. גרסה 1.6.0-alpha06 מכילה את השמירות האלה.
גרסה 1.6.0-alpha05
6 בספטמבר 2023
androidx.compose.animation:animation-*:1.6.0-alpha05 מופץ. גרסה 1.6.0-alpha05 מכילה את השמירות האלה.
שינויים ב-API
- נוספה האפשרות
PathEasingכדי לספק נתיב שרירותי לעקומת ההאצה. (Idb4b9)
גרסה 1.6.0-alpha04
23 באוגוסט 2023
androidx.compose.animation:animation-*:1.6.0-alpha04 מופץ. גרסה 1.6.0-alpha04 מכילה את השמירות האלה.
שינויים ב-API
- מוסיפים
SeekableTransitionStateכדי לאפשר למפתחים לשלוט בהתקדמות של מעבר. (I8e69d)
גרסה 1.6.0-alpha03
9 באוגוסט 2023
androidx.compose.animation:animation-*:1.6.0-alpha03 מופץ. גרסה 1.6.0-alpha03 מכילה את השמירות האלה.
שינויים ב-API
- סוג חדש של מעבר כניסה/יציאה שמשנה את גודל התוכן בהתאם לגודל של הקונטיינר המונפש במהלך אנימציית הכניסה והיציאה.
LookaheadScopeהממשק והכיף של Composable יציבים עכשיו. (Ifb2ce)
גרסה 1.6.0-alpha02
26 ביולי 2023
androidx.compose.animation:animation-*:1.6.0-alpha02 מופץ. גרסה 1.6.0-alpha02 מכילה את השמירות האלה.
שינויים ב-API
- חדש
ExitTransition.Holdלהצגת תוכן יוצא ב-AnimatedContentעד לסיום המעבר של הכניסה והיציאה. (I5984f) - הערות נוספות לציון קלט מותר לפונקציות שניתנות להרכבה (I51109)
גרסה 1.6.0-alpha01
21 ביוני 2023
androidx.compose.animation:animation-*:1.6.0-alpha01 מופץ. גרסה 1.6.0-alpha01 מכילה את השמירות האלה.
תכונות חדשות
- כדי לשלב באופן מלא את
Modifier.animateContentSizeו-AnimatedVisibilityבמערכת החיזוי, צריך לדווח על גודל היעד במעבר החיזוי.
שינויים ב-API
- נכס חדש ב-
IntrinsincMeasureScopeוההטמעות שלו (למשל,MeasureScope) כדי לציין אם המעבר הנוכחי של המדד הוא מעבר צופה פני עתיד. (I7a812)
תיקוני באגים
- הוסרו הקצאות מאנימציות קפיציות. (Ie9431)
- השם של פרמטר הערך עבור Enum.valueOf השתנה (Ia9b89)
- יותר חריגים שהופעלו מ-enum valueOf (I818fe)
גירסה 1.5
גרסה 1.5.4
18 באוקטובר 2023
androidx.compose.animation:animation-*:1.5.4 מופץ. גרסה 1.5.4 מכילה את השמירות האלה.
גרסה 1.5.3
4 באוקטובר 2023
androidx.compose.animation:animation-*:1.5.3 מופץ. אין שינויים בגרסה הזו
גרסה 1.5.2
27 בספטמבר 2023
androidx.compose.animation:animation-*:1.5.2 מופץ. גרסה 1.5.2 מכילה את השמירות האלה.
גירסה 1.5.1
6 בספטמבר 2023
androidx.compose.foundation:foundation-*:1.5.1 מופץ. גרסה 1.5.1 מכילה את השמירות האלה.
תיקוני באגים
- תוקנה בעיה שבה שדות טקסט הציגו מקלדת ואפשרו עריכה כשערך המאפיין
readOnlyהיה true. תוקנה גם בעיה שגרמה לכך שהמקלדת לא הוצגה כש-readOnlyהשתנה מ-true ל-false בזמן שהמיקוד היה עליה. (I34a19, b/246909589)
גירסה 1.5.1
6 בספטמבר 2023
androidx.compose.animation:animation-*:1.5.1 מופץ. גרסה 1.5.1 מכילה את השמירות האלה.
גרסה 1.5.0
9 באוגוסט 2023
androidx.compose.animation:animation-*:1.5.0 מופץ. גרסה 1.5.0 מכילה את השמירות האלה.
גרסה 1.5.0-rc01
26 ביולי 2023
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
28 ביוני 2023
androidx.compose.animation:animation-*:1.5.0-beta03 מופץ. גרסה 1.5.0-beta03 מכילה את השמירות האלה.
גרסה 1.5.0-beta02
7 ביוני 2023
androidx.compose.animation:animation-*:1.5.0-beta02 מופץ. גרסה 1.5.0-beta02 מכילה את השמירות האלה.
גרסה 1.5.0-beta01
24 במאי 2023
androidx.compose.animation:animation-*:1.5.0-beta01 מופץ. גרסה 1.5.0-beta01 מכילה את השמירות האלה.
שינויים ב-API
- הסרנו הקצאות בהרכבה מחדש, באנימציות צבע וב-
AndroidComposeView(Ib2bfa)
תיקוני באגים
- הוסרו הקצאות מאנימציות קפיציות (Ie9431)
גרסה 1.5.0-alpha04
10 במאי 2023
androidx.compose.animation:animation-*:1.5.0-alpha04 מופץ. גרסה 1.5.0-alpha04 מכילה את השמירות האלה.
שינויים ב-API
-
ContentKeyנתמך עכשיו ב-AnimatedContentכדי לאפשר שליטה טובה יותר במועד המעבר. (Ic069b)
גרסה 1.5.0-alpha03
19 באפריל 2023
androidx.compose.animation:animation-*:1.5.0-alpha03 מופץ. גרסה 1.5.0-alpha03 מכילה את השמירות האלה.
תכונות חדשות
- התנהגות ברירת מחדל חדשה של
SubcomposeLayoutב-LookaheadScope. הוא מאפשר לאנימציות שלSubcomposeLayoutsשלא כוללות משבצות מותנות (למשלTabRow,Scaffold,BoxWithConstraintsוכו') לפעול בצורה חלקה עם אנימציות של חיזוי מראש.
שינויים ב-API
- ערך ברירת מחדל חדש
intermediateMeasurePolicyשמשתמש מחדש במדיניות המדידה ממעבר החיפוש מאפשר לסוגי משנה שלSubcomposeLayoutללא משבצות מותנות כמוScaffold,TabRowו-BoxWithConstraintsלפעול עם חיפוש מראש כברירת מחדל. (Id84c8) - משנים את השם של פונקציית ה-infix ל-
togetherWithכדי לשלב בין מעברי כניסה ויציאה. AnimatedContentScopeכנמען של פונקציית ה-Lambda של התוכן. (Ic39ae)
גרסה 1.5.0-alpha02
5 באפריל 2023
androidx.compose.animation:animation-*:1.5.0-alpha02 מופץ. גרסה 1.5.0-alpha02 מכילה את השמירות האלה.
תכונות חדשות
- API ניסיוני חדש לתמיכה בחיפוש קדימה ב-
SubcomposeLayout. הפעולה הזו תאפשר ל-SubcomposeLayoutלפעול באופן תקין ב-LookaheadScope. בקרוב תהיה תמיכה נוספת ומוכנה לשימוש בסוגי משנה ספציפיים שלSubcomposeLayout.
שינויים ב-API
-
SubcomposeLayoutAPI חדש שמקבל מדיניות נוספת של אמצעי ביניים לטיפול בלוגיקה של מדידה או פריסה במהלך אנימציות שמבוססות על חיזוי. (I017d3)
גרסה 1.5.0-alpha01
22 במרץ 2023
androidx.compose.animation:animation-*:1.5.0-alpha01 מופץ. גרסה 1.5.0-alpha01 מכילה את השמירות האלה.
שינויים ב-API
- המאמר
AnimatedContentממשקי API יציביםAnimatedContentScopeשינה את השם שלו לAnimatedContentTransitionScope. scaleInו-scaleOutהם עכשיו ממשקי API יציבים. (Iaf54e)
גרסה 1.4
גרסה 1.4.3
3 במאי 2023
הגרסאות של 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
19 באפריל 2023
הגרסאות androidx.compose.animation:animation:1.4.2, androidx.compose.animation:animation-core:1.4.2 ו-androidx.compose.animation:animation-graphics:1.4.2 יצאו ללא שינויים. גרסה 1.4.2 מכילה את השמירות האלה.
גרסה 1.4.1
5 באפריל 2023
הגרסאות 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 מכילה את השמירות האלה.
גרסה 1.4.0
22 במרץ 2023
האפליקציות androidx.compose.animation:animation:1.4.0, androidx.compose.animation:animation-core:1.4.0 וגם androidx.compose.animation:animation-graphics:1.4.0 מושקות. גרסה 1.4.0 מכילה את השמירות האלה.
שינויים חשובים מאז גרסה 1.3.0
- התווית Tooling נתמכת ב-r
ememberInfiniteTransitionובכל פונקציות ההרחבה ב-InfiniteTransitionוב-Transition (לדוגמה,InfiniteTransition#animateColor) (I56ef7)
גרסה 1.4.0-rc01
8 במרץ 2023
הגרסאות 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
22 בפברואר 2023
הגרסאות 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
8 בפברואר 2023
הגרסאות 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
25 בינואר 2023
האפליקציות 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
11 בינואר 2023
האפליקציות 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 מכילה את השמירות האלה.
תכונות חדשות
- יש תמיכה בתווית Tooling ב-
rememberInfiniteTransitionובכל פונקציות ההרחבה ב-InfiniteTransitionוב-Transition(לדוגמה,InfiniteTransition#animateColor) (I56ef7)
שינויים ב-API
- ממשקי ה-API
InfiniteTransition#TransitionAnimationStateו-InfiniteTransition#animationsהם עכשיו ציבוריים. (I36682)
גרסה 1.4.0-alpha03
7 בדצמבר 2022
האפליקציות 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 מכילה את השמירות האלה.
שינויים ב-API
- בבדיקות של ממשק משתמש באמצעות כלל Compose, המשכי הפעולה שהופסקו במהלך קריאות חוזרות (callbacks) של
withFrameNanosלא יישלחו עד שכל הקריאות החוזרות של המסגרת יסיימו לפעול. ההתנהגות הזו תואמת להתנהגות של כתיבת הודעה כשהיא פועלת כרגיל. עם זאת, יכול להיות שבדיקות שמסתמכות על ההתנהגות הישנה ייכשלו. השינוי הזה אמור להשפיע רק על קוד שמבצע קריאה ישירה ל-withFrameNanosאו ל-withFrameMillis, וכולל לוגיקה מחוץ לקריאות החוזרות שמועברות לפונקציות האלה, שאולי צריך להעביר אותה לתוך הקריאות החוזרות. בדוגמה הזו אפשר לראות את השינויים בבדיקת האנימציה. - נוסף פרמטר אופציונלי
onPerformTraversals: (Long) -> Unitל-constructor ולפונקציית factory שלTestMonotonicFrameClockכדי להריץ קוד אחרי הקריאות החוזרות (callbacks) שלwithFrameNanosאבל לפני חידוש הקורוטינות של המתקשרים. (Idb413, b/254115946, b/222093277, b/255802670) - פרמטר חדש ב-
AnimatedContentלתווית כלי (Iebe2d)
גרסה 1.4.0-alpha02
9 בנובמבר 2022
האפליקציות 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 מכילה את השמירות האלה.
שינויים ב-API
- הוספת
ToolingStateכדי לאפשר לכלים לשנות מצבים פנימיים של Composable (Ie6614)
גרסה 1.4.0-alpha01
24 באוקטובר 2022
האפליקציות 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)
גרסה 1.3
גרסה 1.3.3
11 בינואר 2023
האפליקציות androidx.compose.animation:animation:1.3.3, androidx.compose.animation:animation-core:1.3.3 וגם androidx.compose.animation:animation-graphics:1.3.3 מושקות. גרסה 1.3.3 מכילה את השמירות האלה.
- לא בוצעו שינויים מאז גרסה 1.3.2.
גרסה 1.3.2
7 בדצמבר 2022
האפליקציות androidx.compose.animation:animation:1.3.2, androidx.compose.animation:animation-core:1.3.2 וגם androidx.compose.animation:animation-graphics:1.3.2 מושקות. גרסה 1.3.2 מכילה את השמירות האלה.
תיקוני באגים
- העדכון כולל תמיכה ב-androidx.compose.ui 1.3.2
גרסה 1.3.1
9 בנובמבר 2022
האפליקציות 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 מכילה את השמירות האלה.
גרסה 1.3.0
24 באוקטובר 2022
האפליקציות 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 מכילה את השמירות האלה.
שינויים חשובים מאז גרסה 1.2.0
- קבוצה חדשה של פונקציות החלקה הפכה ליציבה
גרסה 1.3.0-rc01
5 באוקטובר 2022
האפליקציות 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
21 בספטמבר 2022
האפליקציות 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
7 בספטמבר 2022
האפליקציות 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
24 באוגוסט 2022
האפליקציות 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
10 באוגוסט 2022
האפליקציות 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 מכילה את השמירות האלה.
שינויים ב-API
- פרמטר חדש ב-
Crossfade, ב-animateAsStateוב-Animatableלתווית כלי (Iac08a) - הוספנו את הפונקציה
atFractionלהגדרת פריימים מרכזיים בשבריר במקום במשך זמן ספציפי. (I20c76, b/232059455)
גרסה 1.3.0-alpha02
27 ביולי 2022
האפליקציות 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
29 ביוני 2022
האפליקציות 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 מכילה את השמירות האלה.
שינויים ב-API
-
LookaheadLayoutחדש שתומך במעבר לחיפוש קדימה לפני המדידה או הפריסה בפועל. כך אפשר לבצע חישוב מראש של הפריסה כשהיא משתנה, ובמקביל לאפשר למדד או לפריסה אחרי החיזוי להשתמש בגודל או במיקום שחושבו מראש כדי להנפיש את הגודל והמיקומים לעבר היעד.SubcomposeLayoutsעדיין לא נתמכים, אבל הם יתמכו בגרסה הקרובה. (I477f5)
גרסה 1.2
גרסה 1.2.1
10 באוגוסט 2022
האפליקציות androidx.compose.animation:animation:1.2.1, androidx.compose.animation:animation-core:1.2.1 וגם androidx.compose.animation:animation-graphics:1.2.1 מושקות. גרסה 1.2.1 מכילה את השמירות האלה.
גרסה 1.2.0
27 ביולי 2022
האפליקציות androidx.compose.animation:animation:1.2.0, androidx.compose.animation:animation-core:1.2.0 וגם androidx.compose.animation:animation-graphics:1.2.0 מושקות. גרסה 1.2.0 מכילה את השמירות האלה.
שינויים חשובים מאז גרסה 1.1.0
- האנימציה של יצירת הודעה תומכת עכשיו בהגדרה 'קנה מידה של משך זמן למנפיש' מתוך 'אפשרויות למפתחים'.
- מבחר גדול של עקומות ריכוך חדשות וניסיוניות.
-
AnimatedImageVectorתומך עכשיו ב-repeatCountוב-repeatMode
גרסה 1.2.0-rc03
29 ביוני 2022
האפליקציות 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
22 ביוני 2022
האפליקציות 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
15 ביוני 2022
האפליקציות 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 מכילה את השמירות האלה.
שינויים ב-API
- ממשקים בספריות של Compose נוצרים עכשיו באמצעות שיטות ממשק שמוגדרות כברירת מחדל ב-jdk8 (I5bcf1)
גרסה 1.2.0-beta03
1 ביוני 2022
האפליקציות 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 מכילה את השמירות האלה.
שינויים ב-API
- נוספו עקומות שיכוך ניסיוניות לאנימציות (I64a38)
גרסה 1.2.0-beta02
18 במאי 2022
האפליקציות 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
11 במאי 2022
האפליקציות 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! לא בוצעו שינויים מאז גרסת האלפא האחרונה.
גרסה 1.2.0-alpha08
20 באפריל 2022
האפליקציות 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
6 באפריל 2022
האפליקציות 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 מכילה את השמירות האלה.
שינויים ב-API
-
AnimatedImageVectorתומך עכשיו ב-repeatCountוב-repeatMode(Ia3e75, b/199304067)
גרסה 1.2.0-alpha06
23 במרץ 2022
האפליקציות 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 מכילה את השמירות האלה.
שינויים ב-API
- עדכון של ניתוח רכיבי וקטור לציור כדי לתמוך בשיקוף אוטומטי להפיכת התוכן של
VectorPainterאם כיוון הפריסה הנוכחי הוא מימין לשמאל. (I79cd9, b/185760237)
תיקוני באגים
- ממשקי ה-API של גרפיקה וקטורית עודכנו כך שישתמשו בהערה הנכונה שאפשר להוסיף
@VectorComposableבמקום@UiComposable(I942bc)
גרסה 1.2.0-alpha05
9 במרץ 2022
האפליקציות 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 מכילה את השמירות האלה.
שינויים ב-API
- איזה כיף! האנימציה של יצירת ההודעה תומכת עכשיו בהגדרה 'קנה מידה של משך זמן למנפיש' מתוך 'אפשרויות למפתחים'. (I5a4fc, b/161675988)
גרסה 1.2.0-alpha04
23 בפברואר 2022
האפליקציות 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
9 בפברואר 2022
האפליקציות 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
26 בינואר 2022
האפליקציות 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
12 בינואר 2022
האפליקציות 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 מכילה את השמירות האלה.
שינויים ב-API
- כדי לטעון קובץ משאבים של
<animated-vector>, משתמשים ב-AnimatedImageVector.animatedVectorResourceבמקום ב-animatedVectorResource.- משתמשים ב-
rememberAnimatedVectorResourceבמקום ב-AnimatedImageVector#painterForכדי להציגAnimatedImageVector. (I9c300)
- משתמשים ב-
תיקוני באגים
- הוספת שיטות toString ל-Animatable ול-AnimationResult. (Icd3a6)
עדכונים של יחסי תלות
- עכשיו התלות היא ב-Kotlin
1.6.10.
גרסה 1.1
גרסה 1.1.1
23 בפברואר 2022
האפליקציות androidx.compose.animation:animation:1.1.1, androidx.compose.animation:animation-core:1.1.1 וגם androidx.compose.animation:animation-graphics:1.1.1 מושקות. גרסה 1.1.1 מכילה את השמירות האלה.
תיקוני באגים
- תיקון
NullPointerExceptionב-androidx.compose.ui.platform.RenderNodeLayer.updateDisplayList(aosp/1947059, b/206677462) - תוקנה קריסה שנגרמה בגלל תוכן הלוח בזמן קריאה מהלוח ב-Android. (I06020, b/197769306)
- תוקנה בעיה בפריסה מימין לשמאל ב-
LazyVerticalGrid(aosp/1931080, b/207510535)
גרסה 1.1.0
9 בפברואר 2022
האפליקציות androidx.compose.animation:animation:1.1.0, androidx.compose.animation:animation-core:1.1.0 וגם androidx.compose.animation:animation-graphics:1.1.0 מושקות. גרסה 1.1.0 מכילה את השמירות האלה.
שינויים חשובים מאז גרסה 1.0.0
- תמיכה יציבה באפקט הגלילה העודפת ב-Android 12
- שיפורים בגודל משטח המגע
- שימו לב: ב-Compose 1.0, רכיבי Material ירחיבו את שטח הפריסה שלהם כדי לעמוד בהנחיות הנגישות של Material בנוגע לגודל אזור המגע. לדוגמה, משטח המגע של לחצן יתרחב לגודל מינימלי של 48x48dp, גם אם הגדרתם גודל קטן יותר ללחצן. כך, התנהגות Compose Material זהה להתנהגות של רכיבי Material Design, ומתקבלת התנהגות עקבית אם משלבים בין Views לבין Compose. השינוי הזה גם מבטיח שכשתצרו את ממשק המשתמש באמצעות רכיבי Compose Material, הדרישות המינימליות לנגישות של משטחי מגע יתקיימו.
- תמיכה יציבה בפס ניווט
- העברנו מספר ממשקי API שהיו בשלב הניסוי לגרסה יציבה
- תמיכה בגרסאות חדשות יותר של Kotlin
גרסה 1.1.0-rc03
26 בינואר 2022
האפליקציות 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
15 בדצמבר 2021
androidx.compose.animation:animation:1.1.0-rc01 וגם androidx.compose.animation:animation-core:1.1.0-rc01 מופצים. גרסה 1.1.0-rc01 מכילה את השמירות האלה.
שינויים ב-API
- כדי לטעון קובץ משאבים של
<animated-vector>, משתמשים ב-AnimatedImageVector.animatedVectorResourceבמקום ב-animatedVectorResource.- משתמשים ב-
rememberAnimatedVectorResourceבמקום ב-AnimatedImageVector#painterForכדי להציגAnimatedImageVector. (I9c300)
- משתמשים ב-
גרסה 1.1.0-beta04
1 בדצמבר 2021
האפליקציות 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
17 בנובמבר 2021
האפליקציות 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 מכילה את השמירות האלה.
שינויים ב-API
- נוסף משנה חדש Modifier.onPlaced כדי לאפשר מעקב אחרי שינוי מיקום. לכן, אפשר לבצע שינויים נוספים בהיסט של משנה צאצא על סמך השינוי שנצפה במיקום. (I558fd)
נוספה תמיכה חדשה ב-contentKey ב-Crossfade. מערכת האנימציה תשתמש ב-ContentKey כדי לבדוק שוויון. לכן אפשר להשיג השוואה מותאמת אישית של מצבים באמצעות ציון contentKey מתאים למצבים שונים.
ContentKey ישמש גם כמפתח לשמירה ולשחזור של תוכן. (I2e055, b/197907070)
גרסה 1.1.0-beta02
3 בנובמבר 2021
האפליקציות 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 מכילה את השמירות האלה.
תיקוני באגים
- ממשקי API חדשים לאנימציה לתמיכה בכלים. באופן ספציפי, הם מאפשרים לכלים לבדוק את האנימציות ואת ההגדרות שלהן במעברים. (I4116e)
גרסה 1.1.0-beta01
27 באוקטובר 2021
האפליקציות 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 מכילה את השמירות האלה.
שינויים ב-API
- ממשקי API חדשים לאנימציה לתמיכה בכלים. באופן ספציפי, הם מאפשרים לכלים לבדוק את האנימציות ואת ההגדרות שלהן במעברים. (I4116e)
גרסה 1.1.0-alpha06
13 באוקטובר 2021
האפליקציות 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
29 בספטמבר 2021
האפליקציות 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 מכילה את השמירות האלה.
שינויים ב-API
ממשקי ה-API
EnterTransition,ExitTransitionוחלק מממשקי ה-APIAnimatedVisibilityהפכו ליציבים. בנוסף, התכונהMutableTransitionState.isIdleכבר לא ניסיונית. (I5072d)שינוי שעלול לשבור את התאימות לאחור: פונקציות lambda במפעלים של Enter/ExitTransition הועברו למיקום האחרון ברשימת הפרמטרים. (I5072d)
גרסה 1.1.0-alpha04
15 בספטמבר 2021
האפליקציות 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
1 בספטמבר 2021
האפליקציות 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
18 באוגוסט 2021
האפליקציות 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 מכילה את השמירות האלה.
שינויים ב-API
- התמיכה ב-StartOffset זמינה עכשיו ב-repeatable וב-infiniteRepeatable. אפשר להשתמש ב-StartOffset כדי להשהות את זמן ההתחלה או להריץ קדימה את האנימציה לפני שהיא מתחילה. ההזחה הזו לא תחזור על עצמה (Ic679f, b/195079908)
- מעבר חדש של כניסה/יציאה לשינוי גודל. אפשר להשתמש בו בשילוב עם סוגים אחרים של Enter/ExitTransitions. (I372da, b/191325593)
גרסה 1.1.0-alpha01
4 באוגוסט 2021
האפליקציות 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 מכילה את השמירות האלה.
שינויים ב-API
-
AnimatedImageVectorוממשקי ה-API שקשורים אליו נמצאים עכשיו במודולandroidx.compose.animation:animation-graphicsהחדש. (I60873)
תיקוני באגים
- הועבר
InfiniteAnimationPolicyאל :compose:ui (I5eb09, b/160602714)
גירסה 1.0
גרסה 1.0.5
3 בנובמבר 2021
androidx.compose.animation:animation:1.0.5 וגם androidx.compose.animation:animation-core:1.0.5 מופצים. גרסה 1.0.5 מכילה את השמירות האלה.
תיקוני באגים
- תוקנה קריסה במעקב אחר מופעים של derivedStateOf. (aosp/1792247)
גרסה 1.0.4
13 באוקטובר 2021
androidx.compose.animation:animation:1.0.4 וגם androidx.compose.animation:animation-core:1.0.4 מופצים. גרסה 1.0.4 מכילה את השמירות האלה.
עדכונים של יחסי תלות
- העדכון כולל תלות ב-Kotlin
1.5.31
גרסה 1.0.3
29 בספטמבר 2021
androidx.compose.animation:animation:1.0.3 וגם androidx.compose.animation:animation-core:1.0.3 מופצים. גרסה 1.0.3 מכילה את השמירות האלה.
עדכונים של יחסי תלות
- העדכון כולל תלות ב-Kotlin
1.5.30
גרסה 1.0.2
1 בספטמבר 2021
androidx.compose.animation:animation:1.0.2 וגם androidx.compose.animation:animation-core:1.0.2 מופצים. גרסה 1.0.2 מכילה את השמירות האלה.
העדכון כולל תמיכה בגרסת Compose 1.0.2. Compose 1.0.2 עדיין תואם ל-Kotlin 1.5.21.
גרסה 1.0.1
4 באוגוסט 2021
androidx.compose.animation:animation:1.0.1 וגם androidx.compose.animation:animation-core:1.0.1 מופצים. גרסה 1.0.1 מכילה את השמירות האלה.
עדכונים של יחסי תלות
- העדכון כולל תלות ב-Kotlin
1.5.21.
גרסה 1.0.0
28 ביולי 2021
androidx.compose.animation:animation:1.0.0 וגם androidx.compose.animation:animation-core:1.0.0 מופצים. גרסה 1.0.0 מכילה את השמירות האלה.
התכונות העיקריות בגרסה 1.0.0
זו הגרסה היציבה הראשונה של Compose. פרטים נוספים זמינים בבלוג הרשמי של Compose.
בעיות מוכרות
אם אתם משתמשים ב-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 ל-24 ומעלה בקובץ
build.gradle. הבעיה הזו תיפתר בגרסה הבאה של Android Studio Bumblebee וב-AGP7.1. (b/194289155)
גרסה 1.0.0-rc02
14 ביולי 2021
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
1 ביולי 2021
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
16 ביוני 2021
androidx.compose.animation:animation:1.0.0-beta09 וגם androidx.compose.animation:animation-core:1.0.0-beta09 מופצים. גרסה 1.0.0-beta09 מכילה את השמירות האלה.
שינויים ב-API
- רכיב חדש שאפשר להרכיב ממנו רכיבים אחרים (Composable)
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 .... הכללים האלה מופיעים באחת משתי צורות, כדי להתמקד בשיטות או במחלקות.כלל של method יכלול את התבנית הבאה:
<FLAGS><CLASS_DESCRIPTOR>-><METHOD_SIGNATURE>כלל מחלקה יכלול את התבנית הבאה:
<CLASS_DESCRIPTOR>כאן
<FLAGS>הוא אחד או יותר מהתוויםH,Sו-Pכדי לציין אם לסמן את השיטה הזו כ'פופולרית', 'הפעלה' או 'אחרי הפעלה'.
<CLASS_DESCRIPTOR>הוא המתאר של המחלקה שאליה שייכת השיטה המטורגטת. לדוגמה, למחלקהandroidx.compose.runtime.SlotTableיהיה דסקריפטור שלLandroidx/compose/runtime/SlotTable;.
<METHOD_SIGNATURE>הוא החתימה של ה-method, והוא כולל את השם, סוגי הפרמטרים וסוגי ההחזרה של ה-method. לדוגמה, לשיטהfun isPlaced(): Booleanב-LayoutNodeיש חתימהisPlaced()Z.התבניות האלה יכולות להכיל תווים כלליים (
**,*ו-?) כדי שכלל יחיד יכלול כמה שיטות או מחלקות.
מה המטרה של הכללים?
שיטה עם הדגל
Hמציינת שהשיטה הזו היא שיטה 'פעילה' וצריך לבצע קומפילציה שלה מראש.שיטה עם הדגל
Sהיא שיטה שמופעלת בזמן ההפעלה, ולכן צריך לבצע קומפילציה שלה מראש כדי להימנע מהעלות של קומפילציה ופרשנות של השיטה בזמן ההפעלה.מתודה עם הסימון
Pהיא מתודה שמופעלת אחרי ההפעלה.אם מחלקה מופיעה בקובץ הזה, המשמעות היא שהיא נמצאת בשימוש במהלך ההפעלה, ולכן צריך להקצות לה מראש מקום ב-heap כדי להימנע מעלות הטעינה של המחלקה.
איך זה עובד?
- ספריות יכולות להגדיר את הכללים האלה, שייארזו בפרטי מידע שנוצרו בתהליך של פיתוח (Artifact) מסוג AAR. כשיוצרים אפליקציה שכוללת את הארטיפקטים האלה, הכללים האלה משולבים יחד, והכללים המשולבים משמשים ליצירת פרופיל ART בינארי קומפקטי שספציפי לאפליקציה. לאחר מכן, מערכת ART יכולה להשתמש בפרופיל הזה כשהאפליקציה מותקנת במכשירים כדי לבצע קומפילציה מראש של קבוצת משנה ספציפית של האפליקציה, וכך לשפר את הביצועים של האפליקציה, במיוחד בהפעלה הראשונה. הערה: הפעולה הזו לא תשפיע על אפליקציות שאפשר לבצע בהן ניפוי באגים.
גרסה 1.0.0-beta08
2 ביוני 2021
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
18 במאי 2021
androidx.compose.animation:animation:1.0.0-beta07 וגם androidx.compose.animation:animation-core:1.0.0-beta07 מופצים. גרסה 1.0.0-beta07 מכילה את השמירות האלה.
שינויים ב-API
- API חדש
AnimatedVisibilityשתומך בציון הגדרות הניראות ב-MutableTransitionState. בנוסף, ההגדרה הזו מאפשרת לצפות במצבי האנימציה מחוץ ל-AnimatedVisibilityדרךcurrentStateו-isIdle.- תמיכה חדשה במעברים של רכיבי Child ב-Transition
- תמיכה באנימציית מעבר מותאמת אישית לכניסה או ליציאה ב-AnimatedVisibility באמצעות AnimationScope.transition
- משנה חדש animateEnterExit שזמין לכל הצאצאים של AnimatedVisibility
- הוצאנו משימוש את ממשקי ה-API של AnimatedVisibility שמקבלים פרמטר
initiallyVisible(I702f3)
גרסה 1.0.0-beta06
5 במאי 2021
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
21 באפריל 2021
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
7 באפריל 2021
androidx.compose.animation:animation:1.0.0-beta04 וגם androidx.compose.animation:animation-core:1.0.0-beta04 מופצים. גרסה 1.0.0-beta04 מכילה את השמירות האלה.
שינויים ב-API
- הסרנו מופעים ציבוריים של
RowScope, ColumnScope, BoxScope, BoxWithConstraintsScope. (I4e83e, b/181869067)
גרסה 1.0.0-beta03
24 במרץ 2021
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
10 במרץ 2021
androidx.compose.animation:animation:1.0.0-beta02 וגם androidx.compose.animation:animation-core:1.0.0-beta02 מופצים. גרסה 1.0.0-beta02 מכילה את השמירות האלה.
תיקוני באגים
- אכיפת הגבלות על שימוש ציבורי בממשקי API ניסיוניים (I6aa29, b/174531520)
גרסה 1.0.0-beta01
24 בפברואר 2021
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.
שינויים ב-API
- השדה
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)
- ההדרכה הועברה לחבילת Foundation. ה-VelocityTracker הועבר מ-ui.gesture ל-ui.input.pointer. (Iff4a8, b/175294473)
- הוסרו AnimationClockObservable ומחלקות משנה. הסוג AnimatedFloat הוסר. (Icde52, b/177457083)
- הפונקציה Modifier.draggable מקבלת עכשיו DraggableState במקום פונקציית למדה פשוטה. אפשר ליצור מצב באמצעות
rememberDraggableState { delta -> }כדי לקבל את אותה התנהגות כמו קודם (Ica70f, b/175294473). - ממשקי ה-API animate, animatedValue ו-AnimatedValue הוסרו (If27bc, b/177457083)
- ההגדרה AnimationEndReason.Interrupted הוסרה. אם האנימציה מופסקת, המערכת תפעיל את CancellationException. (I2cbbc, b/179695417)
- הוסר TargetAnimation API. (If47d1, b/177457083)
גרסה 1.0.0-alpha12
10 בפברואר 2021
androidx.compose.animation:animation:1.0.0-alpha12 וגם androidx.compose.animation:animation-core:1.0.0-alpha12 מופצים. גרסה 1.0.0-alpha12 מכילה את השמירות האלה.
שינויים ב-API
-
Modifier.pointerInputמחייב עכשיו מפתחות לזכירה כדי לציין מתי צריך להפעיל מחדש את שגרת המשנה לזיהוי קלט של מצביע עבור תלות חדשה. (I849cd) - השם של Bounds השתנה ל-DpRect (I4b32a)
- השם של הפרמטר AnimationSpec אוחד ל-animationSpec בכל מערכת האנימציה. בנוסף, צריך להגביל את Enter/ExitTransition כך שיקבל FiniteAnimationSpec. (Ie47c5, b/177457083)
- הפונקציות Animatable.snapTo ו-Animatable.stop הן עכשיו פונקציות השעיה (If4288)
- בדומה להסרה הקודמת של
state { 0 }composable, ועכשיו אנחנו מעודדים שימוש ב-remember { mutableStateOf(0) }, אנחנו עומדים להסיר אתsavedInstanceState { 0 }composable. במקום זאת, צריך להשתמש ב-rememberSaveable { mutableStateOf(0) }, והמערכת תשמור ותשחזר באופן אוטומטי אם אפשר לאחסן את הסוג שמשמש בתוך MutableState ב-Bundle. אם בעבר העברתם אובייקט מותאם אישית של saver, עכשיו אתם צריכים להשתמש בעומס יתר חדש של rememberSaveable עם פרמטרstateSaver. השימוש ייראה כך:val holder = rememberSaveable(stateSaver = HolderSaver) { mutableStateOf(Holder(0)) }(Ib4c26, b/177338004) - עדכנו את חתימת השיטה של Crossfade כדי שתהיה עקבית יותר עם שאר מערכת האנימציה. (Ib05ed, b/177457083)
- השם של rememberSavedInstanceState() שונה ל-rememberSaveable() והוא הועבר לחבילה androidx.compose.runtime.saveable. (I1366e, b/177338004)
- השם של RestorableStateHolder שונה ל-SaveableStateHolder, והוא הועבר לחבילה androidx.compose.runtime.saveable. השם של השיטה הפנימית RestorableStateProvider שונה ל-SaveableStateProvider. הסוג הגנרי הוסר, כך שאפשר להעביר Any כמפתח. אין יותר צורך בהערה ניסיונית. (I0902e, b/174598702)
- עדכנו את Modifier.animateContentSize API כך שיהיה עקבי עם שאר מערכת האנימציה. (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) - שימוש בערך Long במקום Uptime כסוג זמן אנימציה (Ie3aa7, b/177420019)
גרסה 1.0.0-alpha11
28 בינואר 2021
androidx.compose.animation:animation:1.0.0-alpha11 וגם androidx.compose.animation:animation-core:1.0.0-alpha11 מופצים. גרסה 1.0.0-alpha11 מכילה את השמירות האלה.
שינויים ב-API
- הוצא משימוש מעבר שמבוסס על TransitionDefinition (I0ac57)
- נוסף שדה תווית למעברים ולאנימציות של ילדים שיוצגו בכלי (I619fb)
- הפונקציה animateAsState נקראת עכשיו animateFooAsState, כאשר Foo הוא סוג המשתנה שמונפש. למשל: Float, Dp, Offset וכו' (Ie7e25)
- InfiniteTransition חדש שמריץ כל מספר של אנימציות צאצא. (I1da81)
- שינוי הממשקים של פרמטרים עם מצב ב-Material כך שיכללו פונקציות @Composable שמחזירות
State<T>. הוספנו את הפונקציה Animatable.asState() כדי להקל על ההמרה של Animatable ל-State. בנוסף, השינוי הזה הופך את animateElevation לתוסף suspend ב-Animatable. (If613c)
תיקוני באגים
- הפונקציות onCommit, onDispose ו-onActive הוצאו משימוש לטובת ממשקי ה-API SideEffect ו-DisposableEffect (If760e)
- יש עכשיו תמיכה במצב התחלתי ב-updateTransition (Ifd51d)
- נוסף פרמטר של תיאור תוכן לתמונה ולסמל. הוא משמש כדי לספק תיאור לשירותי הנגישות (I2ac4c)
- הפונקציות invalidate ו-compositionReference() הוצאו משימוש, ועכשיו משתמשים בפונקציות currentRecomposeScope ו-rememberCompositionReference בהתאמה. (I583a8)
- הערכים של משך הזמן וזמן הפעולה יוחלפו בערכים של אלפיות שנייה ארוכות, ובשלב הזה תוסר התלות של קלט מצביע במחלקות האלה. (Ia33b2, b/175142755, b/177420019)
- אפשר ליצור עכשיו רכיבים מסוג clickable, toggleable ו-selectable מחוץ לרכיב composition (I0a130, b/172938345, b/175294473)
- הפונקציה Easing השתנתה לממשק פונקציונלי (Ib14e5)
- factory method חדש
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 לשימוש פנימי בלבד כי הם לא נמצאים בשימוש באף API ציבורי. (Ifff97, b/175142755)
גרסה 1.0.0-alpha10
13 בינואר 2021
androidx.compose.animation:animation:1.0.0-alpha10 וגם androidx.compose.animation:animation-core:1.0.0-alpha10 מופצים. גרסה 1.0.0-alpha10 מכילה את השמירות האלה.
שינויים ב-API
- שינינו את Velocity כך שיכלול חלקים ופעולות מתמטיות. (Ib0447)
- שינינו את השם של
@ExperimentalTestingל-@ExperimentalTestApiכדי שיהיה עקבי עם הערות דומות של API ניסיוני (Ia4502, b/171464963) - שם המיקום שונה ל-DpOffset והפונקציה getDistance() הוסרה (Ib2dfd)
- הוסר ה-API הציבורי Any.identityHashCode() (I025d7)
תיקוני באגים
- API חדש מבוסס-קורוטינות
Animatableשמבטיח הדרה הדדית בין האנימציות שלו. New DecayAnimationSpec כדי לתמוך באנימציית ריקבון רב-ממדית (I820f2, b/168014930) - הפונקציה
animate()הוחלפה בפונקציהanimateAsState(), שמחזירהState<T>במקוםT. כך אפשר לשפר את הביצועים, כי אפשר לצמצם את היקף הביטול למקום שבו נקרא ערך המצב. (Ib179e)
גרסה 1.0.0-alpha09
16 בדצמבר 2020
androidx.compose.animation:animation:1.0.0-alpha09 וגם androidx.compose.animation:animation-core:1.0.0-alpha09 מופצים. גרסה 1.0.0-alpha09 מכילה את השמירות האלה.
שינויים ב-API
- העברנו את Dp.VectorConverter, Position.VectorConverter וכו' אל animation-core, והוצאנו משימוש את VectorConveters הישנים (If0c4b)
- השקנו קבוצה חדשה לגמרי של ממשקי API למעברים, עם שיפורים שנועדו להקל על השימוש, ותמיכה באנימציות שנוספות באופן דינמי וביעדי אנימציה שמחושבים באופן דינמי. ממשקי ה-API האלה מסומנים כניסיוניים כדי להבדיל אותם בקלות מממשקי ה-API שמבוססים על TransitionDefinition. (Ia7fe3)
תיקוני באגים
- פונקציות למדא במאפייני שינוי של היסט מחזירות עכשיו IntOffset ולא Float. (Ic9ee5, b/174137212, b/174146755)
- הוצאה משימוש של LazyColumnFor, LazyRowFor, LazyColumnForIndexed ו-LazyRowForIndexed. במקום זאת, צריך להשתמש ב-LazyColumn וב-LazyRow (I5b48c)
- לגבי השעיה של ממשקי API של קלט מצביע, בוצע שינוי בשם של HandlePointerInputScope ל-AwaitPointerEventScope ושל handlePointerInput() ל-awaitPointerEventScope(). (Idf0a1, b/175142755)
- פונקציה חדשה infiniteRepeatable ליצירת InfiniteRepeatableSpec (I668e5)
- הוסרה ההערה ExperimentalPointerInput (Ia7a24)
גרסה 1.0.0-alpha08
2 בדצמבר 2020
androidx.compose.animation:animation:1.0.0-alpha08 וגם androidx.compose.animation:animation-core:1.0.0-alpha08 מופצים. גרסה 1.0.0-alpha08 מכילה את השמירות האלה.
שינויים ב-API
- נוספה בדיקת Lint לשמות ולמיקום של פרמטרים של lambda שניתנים להרכבה, כדי לבדוק אם הם עומדים בהנחיות של Compose.
בנוסף, העברנו חלק מממשקי ה-API באמצעות
childrenכשם של פונקציית ה-lambda האחרונה שלהם אלcontent, בהתאם לבדיקת ה-lint ולהנחיות. (Iec48e) - הסרנו ממשקי API שהוצאו משימוש בעבר:
- האפשרות
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. בנוסף, עודכנו מחלקות קשורות ל-GraphicsLayer בהתאם למשוב של מועצת ה-API. (I0bd29, b/173834241)
- הוספנו את ממשקי ה-API Modifier.scale/rotate
כאמצעי נוחות ל-drawLayer.
- שינוי השם של Modifier.drawOpacity ל-Modifier.alpha
- השם של Modifier.drawShadow שונה ל-Modifier.shadow (I264ca, b/173208140)
- השדות uptime ו-position של PointerInputData לא יכולים להיות null. (Id468a)
- השם של משני offsetPx שונה ל-offset. עכשיו הם מקבלים פרמטרים של lambda במקום State. (Ic3021, b/173594846)
- ממשקי API חדשים להפעלת אנימציות בקורוטינות (Ied662)
- הסביבות המומלצות ששמן מסתיים ב-
Ambientהוצאו משימוש והוחלפו במאפיינים חדשים שמתחילים ב-Ambient, בהתאם להנחיות לגבי סביבות מומלצות אחרות ולגבי Compose API. (I33440) - השליטה בזמן בבדיקות (TestAnimationClock והשימושים בה) היא עכשיו ניסיונית (I6ef86, b/171378521)
- הסרת המודול הישן ui-test וה-stubs שלו (I3a7cb)
- הפונקציה
RestorableStateHolder.withRestorableStateקיבלה את השם החדשRestorableStateProvider(I66640) - הממשק של ההתאמה עודכן והפך לפונקציונלי. (I46a07, b/172311734)
גרסה 1.0.0-alpha07
11 בנובמבר 2020
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. באפליקציות שאינן אפליקציות Material, במקום זאת צריך ליצור מערכת עיצוב משלכם עם סביבות נושא ספציפיות שאפשר להשתמש בהן ברכיבים שלכם. (I74acc, b/172067770)
- foundation.Text הוצא משימוש והוחלף ב-material.Text. אם אתם מחפשים API בסיסי לטקסט שלא משתמש בערכים מתוך עיצוב, כדאי לעיין ב-androidx.compose.foundation.BasicText. (If64cb)
- האובייקט MeasureResult הועבר מחוץ ל-MeasureScope. (Ibf96d, b/171184002)
- כמה סמלים שקשורים לפריסה הועברו מ-androidx.compose.ui אל androidx.compose.layout.ui. (I0fa98, b/170475424)
גרסה 1.0.0-alpha06
28 באוקטובר 2020
androidx.compose.animation:animation:1.0.0-alpha06 וגם androidx.compose.animation:animation-core:1.0.0-alpha06 מופצים. גרסה 1.0.0-alpha06 מכילה את השמירות האלה.
שינויים ב-API
- מפעילים מעברים ב-ComposeTestRule ומסירים את האפשרות להפעיל את הסמן המהבהב מ-ComposeTestRule. (If0de3)
גרסה 1.0.0-alpha05
14 באוקטובר 2020
androidx.compose.animation:animation:1.0.0-alpha05 וגם androidx.compose.animation:animation-core:1.0.0-alpha05 מופצים. גרסה 1.0.0-alpha05 מכילה את השמירות האלה.
שינויים ב-API
- ממשק חדש של אנימציה ותת-מחלקות: המחלקות האלה מאחסנות את תנאי ההתחלה והסיום של אנימציות, ולכן מאפשרות לבצע שאילתות לגבי ערך ומהירות רק באמצעות זמן ההפעלה (Ie95bd, b/163329867)
תיקוני באגים
- השם של OnPositionedModifier שונה ל-OnGloballyPositionedModifier, והשם של onPositioned() שונה ל-onGloballyPositioned(). (I587e8, b/169083903)
הוצאה משימוש של ממשקי ה-API contentColor() ו-currentTextStyle(), והחלפתם בממשקי ה-API AmbientContentColor ו-AmbientTextStyle בהתאמה. אפשר לגשת לערך הנוכחי באמצעות
.currentבמאפיין הסביבה, כמו בכל סביבה אחרת. השינוי הזה בוצע כדי לשמור על עקביות ולמנוע מצב שבו יש כמה דרכים להשיג את אותה המטרה. בנוסף, שמות של כמה מאפייני סביבה שונו כדי לתאר טוב יותר את המטרה שלהם, באופן הבא:- ContentColorAmbient -> AmbientContentColor
- TextStyleAmbient -> AmbientTextStyle
- IndicationAmbient -> AmbientIndication
- EmphasisAmbient -> AmbientEmphasisLevels
- RippleThemeAmbient -> AmbientRippleTheme (I37b6d)
גרסה 1.0.0-alpha04
1 באוקטובר 2020
androidx.compose.animation:animation:1.0.0-alpha04 וגם androidx.compose.animation:animation-core:1.0.0-alpha04 מופצים. גרסה 1.0.0-alpha04 מכילה את השמירות האלה.
שינויים ב-API
- הוספת ההערה @VisibleForTesting ל-rootAnimationClockFactory, transitionsEnabled, blinkingCursorEnabled ו-textInputServiceFactory, הפיכתם ל-API פנימי והסתרת ה-kdoc שלהם (I554eb, b/168308412)
תיקוני באגים
- עדכון של הרבה ממשקי API של גרפיקה
- ממשקי ה-API של טרנספורמציות של שינוי גודל וסיבוב עודכנו כך שישתמשו בפרמטר Offset יחיד כדי לייצג את קואורדינטת נקודת המשען, במקום בפרמטרים נפרדים של מספרים ממשיים לקואורדינטות x/y ב-DrawScope וב-DrawTransform
- הוסרו השיטות Rect.expandToInclude ו-Rect.join
- עדכנו את התיעוד של Radius כדי לציין צורה אובלית בנוסף לצורה אליפטית
- הוספנו תיעוד שמציין שאסור לקרוא ישירות לבונה הציבורי של מחלקת Radius מוטבעת, אלא ליצור מופעים של אובייקטים של Radius באמצעות בוני הפונקציות שלהם
- הוסרו ממשקי RoundRect API לשליחת שאילתות לגבי topRight, bottomRight, bottomCenter וכו'.
- הוצא משימוש Rect.shift לטובת Rect.translate
- הוסרו ממשקי ה-API RoundRect.grow ו-Rect.shrink
- השם של RoundRect.outerRect שונה ל-Rect.boundingRect
- הוסרו השיטות RoundRect.middleRect/tallMiddleRect/wideMiddleRect ו-Rect.isStadium
- השם של RoundRect.longestSide שונה ל-RoundRect.maxDimension
- השם שונה מ-RoundRect.shortestSide ל-RoundRect.minDimension
- הפונקציה RoundRect.center שונתה והפכה למאפיין במקום לפונקציה
- העדכון של ה-constructor של RoundRect מאפשר להשתמש במאפייני Radius במקום בפרמטרים נפרדים של ערכי הרדיוס x/y
- הוסרו ממשקי API של גודל שהניחו שמדובר במלבן עם מקור ב-0,0
- הוספנו API להשמדה ל-Radius
- העברנו פונקציות שונות של התוסף RoundRect להיות מאפיינים במקום זאת
- (I8f5c7, b/168762961)
- הפונקציה foundation.Box הוצאה משימוש. במקומה צריך להשתמש ב-foundation.layout.Box. (Ie5950, b/167680279)
- שם המקבץ שונה ל-Box. ה-Box הקיים יוצא משימוש לטובת ה-Box החדש ב-compose.foundation.layout. ההתנהגות של Box החדש היא הצבת רכיבי צאצא אחד מעל השני כשיש לו כמה רכיבי צאצא – זה שונה מ-Box הקודם, שהתנהג בצורה דומה ל-Column. (I94893, b/167680279)
- הפרמטרים של קישוט התיבה הוצאו משימוש. אם רוצים להוסיף קישוטים או ריווח לתיבה, צריך להשתמש במקום זאת ב-Modifiers (Modifier.background, Modifier.border, Modifier.padding) (Ibae92, b/167680279)
- מנענו ייבוא סטטי של תוכן בהיקפי פריסה (לדוגמה, alignWithSiblings ב-RowScope). במקום זאת, צריך להשתמש בחלופה של היקף מפורש:
with(RowScope) { Modifier.alignWithSiblings(FirstBaseline) }. (I216be, b/166760797)
גרסה 1.0.0-alpha03
16 בספטמבר 2020
androidx.compose.animation:animation:1.0.0-alpha03 וגם androidx.compose.animation:animation-core:1.0.0-alpha03 מופצים. גרסה 1.0.0-alpha03 מכילה את השמירות האלה.
תיקוני באגים
- השימוש ב-gravity שונה באופן עקבי ל-align או ל-alignment ב-APIs של פריסות. (I2421a, b/164077038)
גרסה 1.0.0-alpha02
2 בספטמבר 2020
androidx.compose.animation:animation:1.0.0-alpha02 וגם androidx.compose.animation:animation-core:1.0.0-alpha02 מופצים. גרסה 1.0.0-alpha02 מכילה את השמירות האלה.
שינויים ב-API
נוסף
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") } }(I0a85b, b/161247083)
תיקוני באגים
הפונקציה onPreCommit הוצאה משימוש. עכשיו הפונקציה onCommit כוללת את ההתנהגות של onPreCommit.
הפונקציות onCommit ו-onActive פועלות עכשיו באותו פריים של Choreographer שבו השינויים בהרכב מתבצעים, ולא בתחילת הפריים הבא של Choreographer. (I70403)
גרסה 1.0.0-alpha01
26 באוגוסט 2020
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
19 באוגוסט 2020
androidx.compose.animation:animation:0.1.0-dev17 וגם androidx.compose.animation:animation-core:0.1.0-dev17 מופצים. גרסה 0.1.0-dev17 מכילה את השמירות האלה.
תכונות חדשות
שינויים ב-API
- ההיסט הפך למחלקה מוטבעת (Iaec70)
- IntOffset הוא עכשיו מחלקה מוטבעת (Iac0bf)
- IntSize היא עכשיו מחלקה מוטבעת (I2bf42)
רכיב ה-composable AnimatedVisibility יוצר אנימציה של ההצגה וההסתרה של תוכן הצאצא.
הוספנו את הרכיבים EnterTransition ו-ExitTransition כדי לעבוד עם הרכיב הניתן להרכבה AnimatedVisibilty, וכך לספק 3 סוגים שונים של אנימציות להצגה ולהסתרה: דהייה, החלקה והרחבה/כיווץ של התוכן. אפשר לשלב בין סוגים שונים של אנימציות כדי ליצור מראה ותחושה מותאמים אישית. (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
5 באוגוסט 2020
androidx.compose.animation:animation:0.1.0-dev16 וגם androidx.compose.animation:animation-core:0.1.0-dev16 מופצים. גרסה 0.1.0-dev16 מכילה את השמירות האלה.
שינויים ב-API
- מעכשיו אפשר לגשת אל ממירים מובנים של וקטורים כדי להמיר יחידות מובנות באמצעות
Foo.VectorConverter. לדוגמה:Dp.VectorConverter,Color.VectorConverter,Float.VectorConverterוכו' (I3e273) - תמיכה במאזין לסיום ב-
Modifier.animateContentSize()כך שכשאנימציית שינוי הגודל מסתיימת, המאזין יקבל הודעה, יחד עם גודל ההתחלה והסיום של האנימציה. (I277b2) - הוספנו את modifier חדש בשם animateContentSize, שיוצר אנימציה של שינוי גודל הפריסה של modifier הצאצא שלו (Ieffdc)
נוסף
MonotonicFrameAnimationClockשמאפשר להשתמש ב-MonotonicFrameClock כ-AnimationClockObservableכדי לגשר על הפער בין השעונים החדשים שמבוססים על קורוטינות לבין ממשקי API שעדיין משתמשים בשעונים הישנים שמבוססים על קריאות חוזרות (callback).הערך
MonotonicFrameClockשווה ערך ל-ManualAnimationClockועכשיו הואManualFrameClock. (I111c7, b/161247083)
תיקוני באגים
- ממשקי ה-API לתמיכה בכתיבה מימין לשמאל עודכנו. נוסף LayoutDirectionAmbient, שאפשר להשתמש בו כדי לקרוא ולשנות את כיוון הפריסה. הוסרו Modifier.rtl ו-Modifier.ltr. (I080b3)
- צריך לציין במפורש את סוג T ב-transitionDefinition. (I1aded)
- החבילה foundation.shape.corner שוטחה לחבילה foundation.share (I46491, b/161887429)
- ה-API Modifier.plus הוצא משימוש. במקומו צריך להשתמש ב-Modifier.then. השימוש במילה 'אז' מספק אות חזק יותר לגבי הסדר, וגם אוסר על הקלדת
Modifier.padding().background() + anotherModifier, מה ששובר את הרצף ומקשה על הקריאה (Iedd58, b/161529964) - השם של Modifier.drawBackground שונה ל-Modifier.background (I13677)
גרסה 0.1.0-dev15
22 ביולי 2020
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של Compose, צריך לעדכן את יחסי התלות בהתאם לקטעי הקוד החדשים שמוצגים למעלה בקטע הצהרה על יחסי תלות.
שינויים ב-API
- ה-API של Transition שונה כך שהוא מחזיר TransitionState במקום להעביר את TransitionState לצאצאים. כך ה-API עקבי יותר עם ממשקי animate() API. (I24e38)
- נוסף פרמטר לשינוי של Crossfade (I87cfe, b/159706180)
- כדי להבהיר את הרעיון של הגדרת אנימציה סטטית, כדאי להשתמש ב-AnimationSpec במקום ב-AnimationBuilder בממשקי ה-API ברמה העליונה.
- שיפרנו את המעבר של DSL על ידי הסרת הדרישה ל-lambda ליצירת AnimationSpecs כמו tween ו-spring. במקום זאת, הם מקבלים ישירות פרמטרים של בנאי.
- שיפור קלות השימוש הכוללת ב-AnimationSpec על ידי פתיחת בנאים במקום להסתמך על בונים
- משנים את משך הזמן והעיכוב של KeyFrames ו-Tween ל-Int. כך נמנעים מהמרות מיותרות של סוגים ומשימוש יתר בשיטות (כדי לתמוך גם ב-Long וגם ב-Int). (Ica0b4)
- השימוש ב-IntPx הוחלף ב-Int. השימוש ב-IntPxPosition הוחלף ב-IntOffset. המאפיין IntPxSize הוחלף במאפיין IntSize. (Ib7b44)
- כדי לאחד את מספר הכיתות שמשמשות לייצוג מידע על גודל, צריך להשתמש בכיתת הגודל במקום ב-PxSize. השימוש בשיטה הזו מאפשר ליהנות מהיתרונות של מחלקה מוטמעת כדי להשתמש בערך מסוג long לאריזת 2 ערכים מסוג float שמייצגים רוחב וגובה. (Ic0191)
- כדי לצמצם את מספר המחלקות שמשמשות לייצוג נתוני מיקום, כדאי להשתמש במחלקה Offset במקום ב-PxPosition. השימוש במחלקה מוטבעת מאפשר לנצל ערך מסוג long כדי לארוז 2 ערכים מסוג float שמייצגים את ההיסטים x ו-y, שמוצגים כערכים מסוג float. (I3ad98)
- החלפנו את השימוש במחלקת Px בכיתות שונות של Compose כחלק ממאמץ רחב של שינוי מבנה הקוד, כדי להסתמך רק על Dp ועל סוגים פרימיטיביים של פרמטרים של פיקסלים (I086f4)
- נוספה תמיכה בפונקציה animate() עבור Dp, Px, Size, Position, Bounds, PxPosition, PxSize, PxBounds, IntPx, IntPxSize, IntPxPosition, IntPxBounds ו-AnimationVector (Ib7518)
- האפשרות Crossfade מקבלת עכשיו פרמטר AnimationBuilder אופציונלי כדי לאפשר הגדרה של האנימציה (I6d6e0)
- החלפנו את כל השימושים ב-Color שניתן להגדיר כ-nullable ב-API בשימושים ב-non-nullable, והשתמשנו ב-Color.Unset במקום ב-null (Iabaa7)
- הוסר המחלקה ValueHolder. שינינו את המבנה של המחלקות AnimatedValue ו-AnimatedFloat כדי להפוך את שדה ערך האנימציה למופשט, כך שמחלקות משנה יוכלו לעקוב אחרי עדכון הערך.
- נוספו מחלקות מודלים ל-AnimatedValue, AnimatedFloat וכו'.
- הוספנו קבוצה חדשה של API קל משקל מסוג @Composable להנפשה בין ערכים. (I79530)
- שינויי תוכנה שעלולים לגרום לכשל ב-API של מצב אווירה. פרטים נוספים מופיעים ביומן ובמסמכי התיעוד של
Ambient<T>(I4c7ee, b/143769776) - מצב חזרה חדש: הפוך. במצב הזה, האיטרציה הקודמת מתהפכת כשהאנימציה חוזרת ב-RepeatableSpec או ב-VectorizedRepeatableSpec. (Ibe0f5)
- תוספות ל-API של ManualAnimationClock:
hasObservers: Booleanופרמטר של בנאיdispatchOnSubscribe: Boolean(Iaa134) - הוספנו ממשקי API לקבלת גבולות מינימליים ומקסימליים ב-AnimatedFloat (Icd9cc)
תיקוני באגים
- השם של
runOnIdleComposeשונה לrunOnIdle(I83607) - השמות של כמה ממשקי API לבדיקות השתנו כדי שיהיו אינטואיטיביים יותר. כל ממשקי ה-API מסוג findXYZ קיבלו שם חדש: onNodeXYZ. כל ממשקי ה-API מסוג doXYZ קיבלו שם חדש: performXYZ. (I7f164)
- הוספנו ממשקי API של אנימציה ברמה נמוכה ללא שמירת מצב. ממשקי ה-API האלה (I63bf7)
- הקומפוזיציה Recompose כבר לא מהווה הפשטה שימושית. רוב ההרכבה מחדש צריכה לקרות כתוצאה מהקצאות של MutableState. לכל דבר אחר, מומלץ להשתמש בפונקציה
invalidateכדי להפעיל יצירה מחדש של ההיקף הנוכחי. (Ifc992) - החלפנו את השימוש במחלקה Px בכמה מחלקות Compose כחלק ממאמץ רחב של שינוי מבנה הקוד, כדי להסתמך רק על Dp ועל סוגים פרימיטיביים של פרמטרים של פיקסלים. מחקנו את הכיתה Px במלואה (I3ff33)
- החלפנו את השימוש במחלקת Px בכמה מחלקות של Compose כחלק ממאמץ רחב של שינוי מבנה הקוד, כדי להסתמך רק על Dp ועל סוגים פרימיטיביים של פרמטרים של פיקסלים (Id3434)
- האפקט Crossfade יכול לפעול עכשיו עם הערך null כערך התחלתי (Iad6a4, b/155947711)
- החלפנו את השימוש במחלקת Px בכמה מחלקות של Compose כחלק ממאמץ רחב של שינוי מבנה הקוד, כדי להסתמך רק על Dp ועל סוגים פרימיטיביים של פרמטרים של פיקסלים (I19d02)
- איחדנו את ההטמעות של CanvasScope, כך שעכשיו יש רק DrawScope ו-ContentDrawScope. שינינו את השם של CanvasScope ל-DrawScope. בוצע עדכון ב-DrawScope כדי להטמיע את הממשק Density ולספק את LayoutDirection מחלקת המשנה DrawScope נמחקה ב-ContentDrawScope בוצע עדכון ב-Painter וב-PainterModifier כך שהם לא ימשיכו לשמור על מאפיין RTL בעצמם, כי DrawScope כבר מספק את זה בלי לספק את זה באופן ידני (I1798e)
- ממשקי API ברמה גבוהה יותר של Compose עודכנו כך שבמקום Canvas הם חושפים CanvasScope. כך הצרכנים לא צריכים לשמור אובייקטים של Paint. צרכנים שעדיין צריכים גישה ל-Canvas יכולים להשתמש בשיטה drawCanvas של התוסף, שמספקת קריאה חוזרת להנפקת פקודות ציור עם ה-Canvas הבסיסי. (I80afd)
- נוספו הפרמטרים verticalGravity ו-horizontalGravity לרכיבים Row ו-Column, בהתאמה. (I7dc5a)
- השם של מודול ui-text שונה ל-ui-text-core (I57dec)
- שיפור DrawModifier API:
- הגדרנו את היקף המקבל של draw() כ-ContentDrawScope
- הסרה של כל הפרמטרים ב-draw()
- ל-DrawScope יש את אותו ממשק כמו ל-CanvasScope הקודם
- ל-ContentDrawScope יש שיטה drawContent() (Ibaced, b/152919067)
-
runOnIdleComposeו-runOnUiThreadהן עכשיו פונקציות גלובליות במקום שיטות ב-ComposeTestRule. (Icbe8f) - [Mutable]אופרטורים של נציגי מאפיינים של מצב הועברו לתוספים
כדי לתמוך באופטימיזציות של נציגי מאפיינים ב-Kotlin 1.4. כדי להמשיך להשתמש ב-
by state { ... }או ב-by mutableStateOf(...), המתקשרים צריכים להוסיף ייבוא. (I5312c) - התכונה ColoredRect הוצאה משימוש. במקום זאת, אתם צריכים להשתמש ב-
Box(Modifier.preferredSize(width, height).drawBackground(color)). (I499fa, b/152753731) - הוחלף Modifier plus operator בפונקציות של תוסף factory (I225e4)
- הוצא משימוש Center composable. צריך להחליף אותו ב-LayoutSize.Fill + LayoutAlign.Center modifier, או באחד מהתכנים הקומפוזביליים Box או Stack עם modifiers מתאימים (Idf5e0)
- השם של LayoutFlexible שונה ל-LayoutWeight. השם של הפרמטר tight שונה ל-fill. (If4738)
- הפונקציה Opacity composable הוחלפה במאפיין 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)