מעבר

אנימציה של תנועה בממשק המשתמש באמצעות פריסות התחלה וסיום.
העדכון האחרון גרסה יציבה גרסה מועמדת להפצה גרסת בטא גרסה אלפא
11 בדצמבר 2024 1.5.1 - - 1.6.0-alpha01

הצהרת יחסי תלות

כדי להוסיף תלות ב-Transition, צריך להוסיף את מאגר Google Maven לפרויקט. מידע נוסף זמין במאגר Maven של Google.

מוסיפים את יחסי התלות של הארטיפקטים הנדרשים בקובץ build.gradle של האפליקציה או המודול:

מגניב

dependencies {
    // Java language implementation
    implementation "androidx.transition:transition:1.5.1"
    // Kotlin
    implementation "androidx.transition:transition-ktx:1.5.1"
}

Kotlin

dependencies {
    // Java language implementation
    implementation("androidx.transition:transition:1.5.1")
    // Kotlin
    implementation("androidx.transition:transition-ktx:1.5.1")
}

מידע נוסף על יחסי תלות זמין במאמר הוספת יחסי תלות ל-build.

משוב

המשוב שלכם עוזר לנו לשפר את Jetpack. אם נתקלתם בבעיות חדשות או שיש לכם רעיונות לשיפור הספרייה הזו, נשמח לשמוע מכם. לפני שיוצרים בעיה חדשה, כדאי לעיין בבעיות הקיימות בספרייה הזו. כדי להצביע על בעיה קיימת, לוחצים על לחצן הכוכב.

דיווח על בעיה חדשה

מידע נוסף זמין במסמכי התיעוד של Issue Tracker.

גרסה 1.6

גרסה 1.6.0-alpha01

11 בדצמבר 2024

androidx.transition:transition:1.6.0-alpha01 ו-androidx.transition:transition-ktx:1.6.0-alpha01 משוחררים. גרסת 1.6.0-alpha01 מכילה את ההוספות האלה.

תכונות חדשות

  • Transition מגדיר עכשיו את ההורה המנותק של ViewOverlays שמשמש ליצירת אנימציה של המעברים שלו. כך ניתן לפתור את הבעלים דרך ההורה המנותק, כלומר עכשיו אפשר לפתור בצורה נכונה את ViewModels, את מחזורי החיים וכו' במהלך המעבר. (I10a16, ‏ b/340894487, ‏ b/287484338)

תיקוני באגים

  • הספרייה הזו משתמשת עכשיו בהערות של JSpecify לגבי ערכים null, שהן שימוש בסוגים. מפתחי Kotlin צריכים להשתמש בארגומנטים הבאים של המהדר כדי לאכוף שימוש נכון: -Xjspecify-annotations=strict, -Xtype-enhancement-improvements-strict-mode (I1f54e, b/326456246)
  • הסרנו את התיאור הידני של הגישה לממשקי API חדשים של פלטפורמות, כי הגישה הזו מתבצעת באופן אוטומטי באמצעות בניית מודלים של ממשקי API כשמשתמשים ב-R8 עם AGP מגרסה 7.3 ואילך (למשל, R8 מגרסה 3.3) ובכל גרסאות ה-build כשמשתמשים ב-AGP מגרסה 8.1 ואילך (למשל, D8 מגרסה 8.1). לקוחות שלא משתמשים ב-AGP מומלצים לעדכן ל-D8 בגרסה 8.1 ואילך. למידע נוסף, מומלץ לעיין במאמר הזה. (Ia60e0, ‏ b/345472586)

גירסה 1.5

גירסה 1.5.1

24 ביולי 2024

androidx.transition:transition:1.5.1 ו-androidx.transition:transition-ktx:1.5.1 משוחררים. גרסת 1.5.1 כוללת את ההוספות האלה.

תיקוני באגים

  • תוקנה בעיה שבה קריאות ל-animateToStart() או ל-animateToEnd() במעבר שניתן לדילוג יטופלו כקריאות מוזנחות אם המעבר לא התחיל. (I44d96, ‏ b/338624457)

גרסה 1.5.0

1 במאי 2024

androidx.transition:transition:1.5.0 ו-androidx.transition:transition-ktx:1.5.0 משוחררים. הגרסה 1.5.0 כוללת את ההוספות האלה.

שינויים חשובים מאז גרסה 1.4.0

  • מעברים תומכים בחיפוש במעברים ב-API 34 ואילך. ממשק API חדש נוסף ל-TransitionManager, ‏ controlDelayedTransition(), שמחזיר TransitionSeekController שמאפשר לחפש את Transition. גרסת ה-Fragment 1.7.0 משתמשת בפונקציונליות הזו כדי לדלג באופן אוטומטי על מעברים כשמשתמשים בתנועת החזרה החזויית.
  • למעברים יש שיטה חדשה, getRootTransition(), שמחזירה את המעבר שמכיל את המעבר הנוכחי, או את המעבר הנוכחי אם הוא לא נכלל באף מעבר אחר. האפשרות הזו יכולה להיות שימושית אם למפתח יש צורך במודעות שמקשיבות לתחילת המעבר או לסיום שלו.
  • ל-TransitionListeners יש עכשיו מאזינים חדשים מסוג onTransitionStart() ו-onTransitionEnd() שמאפשרים למפתח לדעת אם המעבר מתחיל או מסתיים בכיוון ההפוך או לא. הדבר יכול להיות חשוב לפיתוח מעברים שניתן לדלג ביניהם שיש להם TransitionListeners.

גרסה 1.5.0-rc02

17 באפריל 2024

androidx.transition:transition:1.5.0-rc02 ו-androidx.transition:transition-ktx:1.5.0-rc02 משוחררים. גרסת 1.5.0-rc02 כוללת את ההוספות האלה.

עדכון יחסי תלות

  • עדכנו את התלות ב-Fragment ל-גרסה 1.7.0-rc02, שבה תוקן באג שגרם לקריסה אם נוסף אלמנט משותף שלא ניתן לדלג עליו לעסקה שבה כל המעברים האחרים היו ניתנים לדילוג.

גרסה 1.5.0-rc01

3 באפריל 2024

androidx.transition:transition:1.5.0-rc01 ו-androidx.transition:transition-ktx:1.5.0-rc01 משוחררים. גרסת 1.5.0-rc01 כוללת את ההוספות האלה.

גרסה 1.5.0-beta01

‫20 במרץ 2024

androidx.transition:transition:1.5.0-beta01 ו-androidx.transition:transition-ktx:1.5.0-beta01 משוחררים. גרסת 1.5.0-beta01 מכילה את ההוספות האלה.

תיקוני באגים

  • תוקנה בעיה ב-Fragments שבה הפרעה למעברים נכנסים באמצעות תנועה חזרה חזוייה גרמה להרס התצוגה הנכנסת, ויכול להיות שהיא הותירה מסך ריק. (Id3f22, ‏ b/319531491)

גרסה 1.5.0-alpha06

10 בינואר 2024

androidx.transition:transition:1.5.0-alpha06 ו-androidx.transition:transition-ktx:1.5.0-alpha06 משוחררים. גרסה 1.5.0-alpha06 מכילה את ההוספות האלה.

תיקוני באגים

  • כשמשתמשים ב-TransitionSeekController.animateToStart(), הפונקציה onTransitionEnd() תופעל עכשיו ב-TransitionListeners שנוסף אחרי ה-Runnable שניתנה ל-animateToStart(). (Ic6a55, ‏ b/307624554)

עדכון יחסי תלות

  • יחסי התלות של ה-Fragment עודכנו ל-1.7.0-alpha08.

גרסה 1.5.0-alpha05

29 בנובמבר 2023

androidx.transition:transition:1.5.0-alpha05 ו-androidx.transition:transition-ktx:1.5.0-alpha05 משוחררים. גרסה 1.5.0-alpha05 מכילה את ההוספות האלה.

תיקוני באגים

  • תוקנה שגיאת NullPointerException שנגרמה כתוצאה מהגדרת מעבר של רכיב משותף ואי-הגדרה של enter/exitTransition. (I8472b)
  • נפתרה בעיה שבה animateToStart() עם Slide() לא הצליח להעביר את התצוגה חזרה למיקום ההתחלה (I698f4, ‏ b/300157785)
  • תוקנה בעיה של כניסה חוזרת ל-Transition שגרמה לביטול לא תקין. (Iddcce, ‏ b/308379201)

גרסה 1.5.0-alpha04

4 באוקטובר 2023

androidx.transition:transition:1.5.0-alpha04 ו-androidx.transition:transition-ktx:1.5.0-alpha04. גרסה 1.5.0-alpha04 מכילה את ההצהרות האלה.

שינויים ב-API

  • שינוי שפוגע בתאימות – השיטה animateToStart() מקבלת עכשיו פרמטר Runnable שצריך להשתמש בו כדי להחזיר את התצוגות במעבר למצב המקורי שלהן.

גרסה 1.5.0-alpha03

20 בספטמבר 2023

androidx.transition:transition:1.5.0-alpha03 ו-androidx.transition:transition-ktx:1.5.0-alpha03 משוחררים. גרסה 1.5.0-alpha03 מכילה את ההצהרות האלה.

תכונות חדשות

  • התכונה Transition תומכת עכשיו באנימציות חזרה חזויות מראש בתוך האפליקציה במכשירי Android מגרסה 14 ואילך, כשמשתמשים בה עם Fragment 1.7.0-alpha05.

תיקוני באגים

  • תוקן באג שגרם להפרעה במעבר בין שקפים. כשמעבר שקף השבית מעבר כניסה כדי להסיר תצוגה, הוא קפץ למיקום שגוי. (I946f8, ‏ b/297427333)

גרסה 1.5.0-alpha02

6 בספטמבר 2023

androidx.transition:transition:1.5.0-alpha02 ו-androidx.transition:transition-ktx:1.5.0-alpha02 משוחררים. גרסה 1.5.0-alpha02 כוללת את ההוספות האלה.

תכונות חדשות

  • עכשיו אפשר להגדיר את ההתקדמות כחלק מתוך משך הזמן הכולל באמצעות setCurrentFragment() ב-TransitionSeekController. (aosp/2647607)
  • עכשיו אפשר לראות את ההתקדמות ב-TransitionSeekController כשמשתמשים ב-animateToStart() וב-animateToEnd(), על ידי קריאה ל-addOnProgressChangedListener. (aosp/2647607)
  • הוספנו את TransitionManager.seekTo() כדי לאפשר שימוש בסצנות לצורך דילוג על מעברים. (aosp/2647607)
  • הוספנו אנימציות שמבוססות על פיזיקה למעברים של דילוג. הוא משתמש במעקב מהירות ב-1D כדי לעקוב אחרי שינוי ההתקדמות באמצעות setCurrentFraction() או setCurrentPlayTimeMillis(), ומשתמש בו כדי לקבוע את המהירות ההתחלתית של animateToStart ו-animateToEnd. (aosp/2647607)

תיקוני באגים

  • תוקנה בעיה של הבהוב בזמן דילוג לAutoTransition. (aosp/2643369)
  • תוקנה בעיה שבה מעבר מסוג Slide קפץ למיקום ההתחלה הלא נכון כשהוא הופסק. (aosp/2733729, ‏ b/297427333)

עדכון יחסי תלות

  • עכשיו אפשר לבצע הידור של Transition עם API 34.

גרסה 1.5.0-alpha01

10 במאי 2023

androidx.transition:transition:1.5.0-alpha01 ו-androidx.transition:transition-ktx:1.5.0-alpha01 משוחררים. הגרסה הזו מפותחת בהסתעפות פנימית.

תכונות חדשות

  • מעברים תומכים בחיפוש במעברים ב-API 34 ואילך. ממשק API חדש נוסף ל-TransitionManager, ‏ controlDelayedTransition(), שמחזיר TransisionSeekController שמאפשר לחפש את המעבר.

שינויים ב-API

  • ל-TransitionManager יש שיטה חדשה, controlDelayedTransition(), שמאפשרת לאפליקציות לשלוט בהתקדמות של אנימציות המעבר ב-API מגרסה 34 ואילך. הערך TransitionSeekController שמוחזר מאפשר למפתח לדעת מתי המעבר מוכן לחיפוש, את משך האנימציה ומאפשר להגדיר את השעה הנוכחית של האנימציה. controlDelayedTransition() תומך רק במעברים שמבטלים את הגדרת isSeekable() כך שתחזיר true.
  • למעברים יש שיטה חדשה, getRootTransition(), שמחזירה את המעבר שמכיל את המעבר הנוכחי, או את המעבר הנוכחי אם הוא לא נכלל באף מעבר אחר. האפשרות הזו יכולה להיות שימושית אם למפתח יש צורך במודעות שמקשיבות לתחילת המעבר או לסיום שלו.
  • ל-TransitionListeners יש עכשיו מאזינים חדשים מסוג onTransitionStart() ו-onTransitionEnd() שמאפשרים למפתח לדעת אם המעבר מתחיל או מסתיים בכיוון ההפוך או לא. הדבר יכול להיות חשוב לפיתוח מעברים שניתן לדלג ביניהם שיש להם TransitionListeners.

תיקוני באגים

  • מעכשיו, כשמשכפלים מעברים, המערכת מעתיקה את TransitionListeners שלהם. המשמעות היא שהוספת מאזינים חדשים במהלך createAnimator() לא תשפיע על המעבר ברמה הבסיסית.

גרסה 1.4.1

גרסה 1.4.1

21 באפריל 2021

androidx.transition:transition:1.4.1 ו-androidx.transition:transition-ktx:1.4.1 משוחררים. גרסה 1.4.1 מכילה את ההצהרות האלה על ביצוע שינויים (commits).

תיקוני באגים

  • תוקנה בעיה שבה הפעלת Transition בקונטיינר אחד הייתה משהיתה בטעות מעברים אחרים שפועלים בקונטיינרים נפרדים, וכתוצאה מכך המעברים האחרים האלה לא הסתיימו אף פעם. (aosp/1664439, ‏ b/182845041)

גרסה 1.4.0

גרסה 1.4.0

27 בינואר 2021

androidx.transition:transition:1.4.0 ו-androidx.transition:transition-ktx:1.4.0 משוחררים. גרסה 1.4.0 כוללת את ההצהרות האלה.

שינויים משמעותיים מאז גרסה 1.3.0

  • הארטיפקט transition-ktx כולל תוספים ל-Kotlin להוספת מאזינים למכונות Transition של AndroidX. (b/138870873)

גרסה 1.4.0-rc01

2 בדצמבר 2020

הגרסאות androidx.transition:transition:1.4.0-rc01 ו-androidx.transition:transition-ktx:1.4.0-rc01 פורסמו ללא שינויים מ-1.4.0-beta01. גרסה 1.4.0-rc01 כוללת את השמירות האלה.

גרסה 1.4.0-beta01

22 ביולי 2020

הגרסאות androidx.transition:transition:1.4.0-beta01 ו-androidx.transition:transition-ktx:1.4.0-beta01 פורסמו ללא שינויים מאז 1.4.0-alpha01. גרסה 1.4.0-beta01 מכילה את ההוספות האלה.

גרסה 1.4.0-alpha01

24 ביוני 2020

androidx.transition:transition:1.4.0-alpha01 ו-androidx.transition:transition-ktx:1.4.0-alpha01 משוחררים. גרסה 1.4.0-alpha01 מכילה את ההוספות האלה.

תכונות חדשות

  • הארטיפקט transition-ktx כולל תוספים ל-Kotlin להוספת מאזינים למכונות Transition של AndroidX. (b/138870873)

גרסה 1.3.1

גרסה 1.3.1

19 בפברואר 2020

androidx.transition:transition:1.3.1 משוחרר. גרסה 1.3.1 מכילה את השמירות האלה.

תיקוני באגים

  • תוקן באג שבו חלק מהתצוגות האנימציה נחתכו בצורה שגויה כשנעשה שימוש ב-ChangeTransform (b/148798452)

גרסה 1.3.0

גרסה 1.3.0

22 בינואר 2020

androidx.transition:transition:1.3.0 משוחרר. גרסה 1.3.0 כוללת את ההצהרות האלה.

שינויים חשובים מאז גרסה 1.2.0

  • שיפורים ב-Fragment 1.2.0: שיפור השילוב עם Fragment 1.2.0 כדי להבטיח שהתצוגה של ה-Fragment לא תושמד לפני שהמעבר יושלם, ושהמעברים יבוטלו בזמן המתאים

גרסה 1.3.0-rc02

4 בדצמבר 2019

androidx.transition:transition:1.3.0-rc02 משוחרר. גרסה 1.3.0-rc02 כוללת את ההוספות האלה.

תיקוני באגים

  • תוקנה בעיה שבה צפיות סומנו בצורה שגויה ב-INVISIBLE אחרי ש-Fragment מוסתר הופיע. (b/70793925)

גרסה 1.3.0-rc01

23 באוקטובר 2019

androidx.transition:transition:1.3.0-rc01 פורסם ללא שינויים מאז 1.3.0-beta01. גרסה 1.3.0-rc01 כוללת את ההוספות האלה.

גרסה 1.3.0-beta01

9 באוקטובר 2019

androidx.transition:transition:1.3.0-beta01 משוחרר. גרסה 1.3.0-beta01 כוללת את ההצהרות האלה.

תכונות חדשות

  • שיפור השילוב עם Fragment 1.2.0-beta01 כדי לוודא שהתצוגה של ה-Fragment לא תושמד לפני שהמעבר יושלם, ושהמעברים יבוטלו בזמן המתאים. (aosp/1119841)

גרסה 1.2.0

גרסה 1.2.0

9 באוקטובר 2019

androidx.transition:transition:1.2.0 פורסם ללא שינויים מ-1.2.0-rc01 . גרסה 1.2.0 כוללת את ההצהרות האלה.

שינויים חשובים מאז גרסה 1.1.0

צריך להשתמש בגרסה הזו אם מטרגטים רמת API 29. אחרת, חלק מהמעברים לא יפעלו כראוי. במקום קריאות ההשתקפות, בגרסה הזו נעשה שימוש בשיטות הציבוריות החדשות שנוספו ברמת API ‏29. היא חלק מהמאמצים שלנו להגביל את השימוש בממשקים שאינם SDK.

גרסה 1.2.0-rc01

5 בספטמבר 2019

androidx.transition:transition:1.2.0-rc01 פורסם ללא שינויים מאז הגרסה 1.2.0-beta01. כאן אפשר למצוא את ההתחייבויות (commits) שכלולות בגרסה הזו.

גרסה 1.2.0-beta01

2 ביולי 2019

androidx.transition:transition:1.2.0-beta01 משוחרר. כאן אפשר למצוא את ההתחייבויות (commits) שכלולות בגרסה הזו.

תכונות חדשות

  • צריך להשתמש בגרסה הזו אם מציינים 29 כ-targetSdkVersion. אחרת, חלק מהמעברים לא יפעלו כראוי. במקום קריאות ההשתקפות, בגרסה הזו נעשה שימוש בשיטות הציבוריות החדשות שנוספו ברמת API ‏29. היא חלק מהמאמצים שלנו להגביל את השימוש בממשקים שאינם SDK.

גרסה 1.2.0-alpha01

7 במאי 2019

androidx.transition:transition:1.2.0-alpha01 משוחרר.

תכונות חדשות

  • צריך להשתמש בגרסה הזו אם מציינים את Q כ-targetSdkVersion. אחרת, חלק מהמעברים לא יפעלו כראוי. במקום קריאות ההשתקפות, בגרסה הזו נעשה שימוש בשיטות הציבוריות החדשות שנוספו ב-Q. היא חלק מהמאמצים שלנו להגביל את השימוש בממשקים שאינם SDK.

גרסה 1.1.0

גרסה 1.1.0

2 ביולי 2019

androidx.transition:transition:1.1.0 משוחרר ללא שינויים מ-1.1.0-rc02. כאן אפשר למצוא את ההתחייבויות (commits) שכלולות בגרסה הזו.

גרסה 1.1.0-rc02

5 ביוני 2019

androidx.transition:transition:1.1.0-rc02 משוחרר. כאן אפשר למצוא את ההתחייבויות (commits) שכלולות בגרסה הזו.

תיקוני באגים

  • תיקון ל-TransitionManager.endTransitions() כדי לפעול בצורה תקינה עם מעברים תלויים. (aosp/946400)

גרסה 1.1.0-rc01

7 במאי 2019

androidx.transition:transition:1.1.0-rc01 משוחרר. כאן אפשר למצוא את ההתחייבויות (commits) שכלולות בגרסה הזו.

גרסה 1.1.0-beta01

3 באפריל 2019

androidx.transition:transition:1.1.0-beta01 משוחרר. כאן אפשר למצוא את ההתחייבויות (commits) שכלולות בגרסה הזו.

תיקוני באגים

  • תוקן באג שמקורו בשמירת ViewGroupOverlay במטמון ב-Visibility, שמתרחש ברמת API 17 ומטה (aosp/937350)

גרסה 1.1.0-alpha02

13 במרץ 2019

androidx.transition:transition:1.1.0-alpha02 משוחרר. כאן אפשר למצוא את הרשימה המלאה של השינויים שכלולים בגרסה הזו.

שינויים ב-API

  • הסוג של פרמטר השיטה Scene.getCurrentScene() השתנה מ-View ל-ViewGroup.

תיקוני באגים

  • SidePropagation לא פועל כשמתן עיכוב נוסף דרך setStartDelay() (b/119839526).
  • ChangeImageTransform מחיל מטריצה שגויה כשהפעולה מופסקת לפני API 21 (b/123226255).
  • ChangeTransform פועל באופן שגוי במקרים מסוימים לפני API 21 (b/125777978).

גרסה 1.1.0-alpha01

3 בדצמבר 2018

שינויים ב-API

  • aosp/807055: השיטה Scene.getCurrentScene(View) הפכה לציבורית. היא מאפשרת לכתוב לוגיקה מותנית בהתאמה אישית בהתאם לסצנה הנוכחית.

תיקוני באגים

  • תוקנה קריסה שנגרמה כשמשתמשים ב-TransitionManager כדי לכווץ/להרחיב פריט ב-RecyclerView (b/37129527).
  • תוקנה אנימציה שגויה כשחלים שני מעברים של Visibility (b/62629600).
  • מתן אפשרות לשינוי ערכים כמו משך זמן ו-interpolator לפריטים הצאצאים של TransitionSet‏ (b/64644617).
  • תיקנו הרבה באגים קטנים נוספים.