Compose Animation
androidx.compose.animation
androidx.compose.animation.core
androidx.compose.animation.graphics
(See the API reference docs for all compose packages)
העדכון האחרון | גרסה יציבה | גרסה מועמדת להפצה | גרסת בטא | גרסת אלפא |
---|---|---|---|---|
2 ביולי 2025 | 1.8.3 | - | 1.9.0-beta02 | - |
מבנה
Compose הוא שילוב של 7 מזהי קבוצות Maven בתוך androidx
. כל קבוצה מכילה קבוצת משנה ממוקדת של פונקציות, ולכל אחת מהן יש קבוצה משלה של הערות על הגרסה.
בטבלה הזו מוסבר על הקבוצות ויש קישורים לכל קבוצה של הערות מוצר.
קיבוץ | תיאור |
---|---|
compose.animation | ליצור אנימציות באפליקציות Jetpack Compose כדי לשפר את חוויית המשתמש. |
compose.compiler | שינוי פונקציות @Composable והפעלת אופטימיזציות באמצעות פלאגין של מהדר Kotlin. |
compose.foundation | כתיבת אפליקציות ב-Jetpack Compose באמצעות אבני בניין מוכנות לשימוש והרחבת הבסיס כדי ליצור רכיבים משלכם למערכת העיצוב. |
compose.material | אפשר ליצור ממשקי משתמש של Jetpack פיתוח נייטיב באמצעות רכיבי Material Design מוכנים לשימוש. זוהי נקודת הכניסה ברמה הגבוהה ביותר של Compose, שנועדה לספק רכיבים שתואמים לאלה שמתוארים בכתובת www.material.io. |
compose.material3 | אפשר ליצור ממשקי משתמש ב-Jetpack Compose באמצעות רכיבי 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.8.3" } android { buildFeatures { compose true } composeOptions { kotlinCompilerExtensionVersion = "1.5.15" } kotlinOptions { jvmTarget = "1.8" } }
Kotlin
dependencies { implementation("androidx.compose.animation:animation:1.8.3") } android { buildFeatures { compose = true } composeOptions { kotlinCompilerExtensionVersion = "1.5.15" } kotlinOptions { jvmTarget = "1.8" } }
מידע נוסף על יחסי תלות זמין במאמר הוספת יחסי תלות ב-Build.
משוב
המשוב שלכם עוזר לנו לשפר את Jetpack. נשמח לשמוע מכם אם תגלו בעיות חדשות או אם יש לכם רעיונות לשיפור הספרייה הזו. לפני שיוצרים ספרייה חדשה, כדאי לעיין בבעיות הקיימות בספרייה הזו. כדי להוסיף את ההצבעה שלכם לבעיה קיימת, לוחצים על לחצן הכוכב.
מידע נוסף זמין במאמרי העזרה בנושא כלי המעקב אחר בעיות.
גרסה 1.9
גרסה 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 בתוך סביבת הפיתוח המשולבת, נדרשת גרסה Ladybug של Android Studio או גרסה חדשה יותר.
תכונות חדשות
- שיפור ביצועי הגלילה ברכיבים משותפים (ea4f1f)
שינויים ב-API
- כדי להשתמש בפרויקטים שפורסמו עם Kotlin 2.0, צריך KGP בגרסה 2.0.0 ומעלה. (Idb6b5)
- המאפיינים
TabRow
ו-ScrollableTabRow
הוצאו משימוש, ועכשיו יש מאפיינים ראשיים ומשניים לכל אחד מהם. השורות בכרטיסיות 'ראשי' ו'משני' מניבות ביצועים טובים יותר ומדויקות יותר בהתאם למפרט. (I918e2) - נוספה
LocalResources
קומפוזיציה מקומית למשאבי שאילתה. השיחה עםLocalResources.current
תורכב מחדש כשההגדרה תשתנה, כך ששיחות עם ממשקי API כמוstringResource()
יחזירו ערכים מעודכנים (I50c13, b/274786917)
תיקוני באגים
- מוודאים שהאלמנטים המשותפים מושמטים מהשכבת-העל כשהמעבר מסתיים (35f359)
- הסרת קומפוזיציה מחדש מיותרת במעבר (988923)
- תיקון של טיפול בהפרעות במעבר של ילדים (8aed52)
- חשוב לוודא שהמעבר מתאפס כשמספקים
TransitionState
חדש (57820a)
External Contribution
- מתוך Compose
1.8.1
: End animations inSeekableTransitionState
if already past new duration מאת 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 pass לבין approach pass בגלילה, בהרכב/בסילוק של פריטים ובאנימציה של פריטים, ושימוש ב-lookahead pass כמקור אמת לגבי גלילה ויעד אנימציה של פריטים. - עדכנו את השמות של הפרמטרים
sharedElement
מ-state ל-sharedContentState
כדי לשמור על עקביות בין ממשקי ה-API של רכיבים משותפים. (9e7df5) - חבילת ממשקי ה-API של
AnimatedImageVector
יציבה עכשיו.(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 pass לבין approach pass בגלילה, בהרכב/בסילוק של פריטים ובאנימציה של פריטים, ושימוש ב-lookahead pass כמקור אמת לגבי גלילה ויעד אנימציה של פריטים.
תיקוני באגים
- עדכון המצבים הפנימיים של טרנספורמציית הגודל של
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
playTime
when 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) -
SharedTransitionScope
Experimental הוא עכשיו ממשק ולא מחלקה. (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 הבאים הפכו ליציבים או הוסרו:
- ממשק ה-API
AnimatedVisibilityScope.transition
הוא עכשיו יציב. הוספנו גם יציבות ל-Modifier.animateEnterExit(..)
. (I6c1d1) - גרסאות
ApproachLayoutModifierNode
ו-Modifier.approachLayout
יציבות עכשיו, ויש גרסאות חדשותisMeasurementApproachInProgress()
ו-isPlacementApproachInProgress()
שמחליפות את הגרסאות הישנותisMeasurementApproachComplete()
ו-isPlacementApproachComplete()
בהתאמה. - הוסר שינוי הגישה
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
SeekableTransitionState
animates/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
- ממשק ה-API
AnimatedVisibilityScope.transition
הוא עכשיו יציב. הוספנו גם יציבות ל-Modifier.animateEnterExit(..)
. (I6c1d1) - גרסאות
ApproachLayoutModifierNode
ו-Modifier.approachLayout
יציבות עכשיו, ויש גרסאות חדשותisMeasurementApproachInProgress()
ו-isPlacementApproachInProgress()
שמחליפות את הגרסאות הישנותisMeasurementApproachComplete()
ו-isPlacementApproachComplete()
בהתאמה. - הוסר שינוי הגישה
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)
תיקוני באגים
- שיפור הביצועים של
updateTransition
API.
גרסה 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 ניסיוני.
תיקוני באגים
- הוספנו תמיכה ב-Sweep Gradient לרכיב Renderer ב-
ArcLine
. (I4d5bb) - צריך להטמיע את הפונקציות equals ו-hashcode עבור
PageSize.Fixed
. (Ie3ede, b/300134276) - תיקון בעיה בתאימות בינארית עם שינוי של Window Inset. (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
הממשק והכיף המודולריים יציבים עכשיו. (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)
- more thrown exceptions from 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 fun ל-
togetherWith
כדי לשלב בין מעברי כניסה ויציאה. AnimatedContentScope
New כמקבל של תוכן ה-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
- API חדש של
SubcomposeLayout
שמקבל מדיניות נוספת של אמצעי ביניים לטיפול בלוגיקה של מדידה או פריסה במהלך אנימציות מבוססות-תחזית. (I017d3)
גרסה 1.5.0-alpha01
22 במרץ 2023
androidx.compose.animation:animation-*:1.5.0-alpha01
משוחרר. גרסה 1.5.0-alpha01 מכילה את הקומיטים האלה.
שינויים ב-API
-
AnimatedContent
APIs are now stableAnimatedContentScope
שונה ל-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
אבל לפני חידוש שגרות המשנה (coroutines) של המתקשרים. (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
בפונקציות Easing (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)שינוי שעלול לגרום לבעיות: פונקציות למדא במפעלים של 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, כדרך להשהות את זמן ההתחלה או להריץ קדימה את האנימציה לפני שהיא מתחילה. ההזחה הזו לא תחזור על עצמה (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 כדי להימנע מעלות הטעינה של המחלקה.
איך זה עובד?
- ספריות יכולות להגדיר את הכללים האלה, שייארזו בארטיפקטים של 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)
- ההגדרה 'כיוון' הועברה לחבילת הבסיס. ה-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. השם של ה-method הפנימי RestorableStateProvider שונה ל-SaveableStateProvider. הסוג הגנרי הוסר, כך שאפשר להעביר Any כמפתח. אין יותר צורך בהערה ניסיונית. (I0902e, b/174598702)
- עדכנו את ה-API של 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)
- הוצאנו משימוש את פריט המידע שנוצר בתהליך פיתוח (Artifact) 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 משתנה להיות תוסף השעיה ב-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)
-
items(count: Int)
factory method חדש להיקף של 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) - שינוי השם של Position ל-DpOffset והסרה של getDistance() (Ib2dfd)
- הוסר Any.identityHashCode() public api (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 באמצעות בנאי הפונקציות שלהם
- הוסרו ממשקי 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)
- השם של Stack שונה ל-Box. ה-Box הקיים יוצא משימוש לטובת ה-Box החדש ב-compose.foundation.layout. ההתנהגות של Box החדש היא להציב את רכיבי הצאצא אחד מעל השני כשיש לו כמה רכיבי צאצא – זה שונה מ-Box הקודם, שהתנהג בצורה דומה ל-Column. (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
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)
הקומפוננטה AnimatedVisibility יוצרת אנימציה של ההצגה וההסתרה של תוכן הצאצא.
הוספנו את הרכיבים EnterTransition ו-ExitTransition כדי לעבוד עם הרכיב הניתן להרכבה AnimatedVisibilty, וכך לספק 3 סוגים שונים של אנימציות להופעה ולהיעלמות: דהייה, החלקה והרחבה/כיווץ של התוכן. אפשר לשלב בין סוגים שונים של אנימציות כדי ליצור מראה ותחושה מותאמים אישית. (Idda11)
הוצאה משימוש של PxBounds לטובת Rect. עדכנו את כל השימושים ב-PxBounds ל-rect והוספנו הערות מתאימות של deprecate/replace with כדי לעזור במיגרציה. (I37038, b/162627058)
תיקוני באגים
- השם של
PlacementScope.placeAbsolute()
שונה ל-PlacementScope.place()
, והשם הקודםPlacementScope.place()
שונה ל-PlacementScope.placeRelative()
. כתוצאה מכך, השיטהPlacementScope.place()
לא תשקף יותר אוטומטית את המיקום בהקשרים של כתיבה מימין לשמאל. אם רוצים להשתמש במדיניות הזו, צריך להשתמש במדיניותPlacementScope.placeRelative()
במקום זאת. (I873ac, b/162916675) - הקומפוזיציה
state { ... }
הוצאה משימוש, ועכשיו מומלץ להשתמש בקריאות מפורשות ל-remember { mutableStateOf(...) }
כדי לשמור על בהירות. השינוי הזה מצמצם את כלל ממשקי ה-API ואת מספר המושגים לניהול מצב, והוא תואם לתבנית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, שמנפיש את השינוי בגודל הפריסה של משנה הצאצא שלו (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. היתרון של שימוש במחלקה מוטבעת הוא שאפשר להשתמש בערך ארוך כדי לארוז 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 של מצב אווירה. פרטים נוספים זמינים ביומן ובמסמכי התיעוד (I4c7ee, b/143769776)
Ambient<T>
- מצב חזרה חדש: הפוך. במצב הזה, האיטרציה הקודמת מתהפכת כשהאנימציה חוזרת ב-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 של אנימציה ללא מצב (stateless) ברמה נמוכה. ממשקי ה-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) - הוחלף אופרטור עם משנה בפונקציות של תוסף factory (I225e4)
- הוצא משימוש Center composable. צריך להחליף אותו ב-LayoutSize.Fill + LayoutAlign.Center modifier, או באחד מהתכנים הקומפוזביליים Box או Stack עם שינויים מתאימים (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)