בחירת API לאנימציה

התרשים שלמטה יעזור לכם להחליט באיזה ממשק API להשתמש כדי להטמיע את האנימציה.

תרשים זרימה שמתאר את עץ ההחלטות לבחירת ה-API המתאים לאנימציה

איור 1. עץ החלטות שמתאר איך לבחור את ממשק ה-API המתאים לאנימציה

כדי לבחור את ה-API המתאים ביותר לצורכי האנימציה שלכם, תוכלו לענות על השאלות הבאות בעץ ההחלטות:

  • האם האנימציה שלי דומה יותר לאומנות, ומכילה הרבה אלמנטים חזותיים? למשל, קובצי SVG או תמונות
    • כן: האם יש בו קובצי SVG פשוטים? כלומר, סמל עם אנימציות מיקרו
    • לא: האם צריך לחזור על הפעולה הזו כל הזמן?
      • כן: rememberInfiniteTransition
      • לא: האם זו אנימציה של פריסה?
        • כן: האם אתם עוברים בין כמה רכיבים מורכבים עם תוכן שונה?
          • כן: עם navigation-compose?
          • לא: אנימציה של הופעה או היעלמות?
            • כן: AnimatedVisibility או animateFloatAsState עם Modifier.alpha()
            • לא: גודל אנימציה?
              • כן: Modifier.animateContentSize
              • לא: מאפיין פריסה אחר? למשל, הזזה, ריפוד וכו'
                • כן: אפשר לעיין בקטע 'האם הנכסים עצמאיים לחלוטין זה מזה?'
                • לא: אנימציות של פריטים ברשימה?
        • לא: האם אתם צריכים ליצור אנימציה לכמה נכסים?
          • כן: האם הנכסים עצמאיים לחלוטין זה מזה?
            • כן: animate*AsState, בשביל טקסט, משתמשים ב-TextMotion.Animated
            • לא: להתחיל באותו זמן?
              • כן: כן: updateTransition עם AnimatedVisibility, ‏ animateFloat, ‏ animateInt וכו'
              • לא: Animatable עם animateTo הופעלה בתזמונים שונים (באמצעות פונקציות השעיה)
          • לא: האם האנימציה כוללת קבוצה של ערכי יעד מוגדרים מראש?
            • כן: animate*AsState, לטקסט, משתמשים ב-TextMotion.Animated
            • לא: אנימציה מבוססת-תנועה? האם האנימציה שלכם היא המקור היחיד למידע?

הורדת גרסת ה-PDF של התרשים.