เลือก API ภาพเคลื่อนไหว

แผนภาพต่อไปนี้จะช่วยคุณตัดสินใจว่าจะใช้ API ใดในการใช้ภาพเคลื่อนไหว

โฟลว์ชาร์ตที่อธิบายแผนผังการตัดสินใจในการเลือก API ภาพเคลื่อนไหวที่เหมาะสม
รูปที่ 1 แผนผังการตัดสินใจที่อธิบายวิธีเลือก API ภาพเคลื่อนไหวที่เหมาะสม

โฟลว์ชาร์ตที่อธิบายแผนผังการตัดสินใจในการเลือก API ภาพเคลื่อนไหวที่เหมาะสม

ใช้แผนผังการตัดสินใจต่อไปนี้เพื่อเลือก API ภาพเคลื่อนไหวที่เหมาะสมที่สุดสำหรับกรณีการใช้งานของคุณ

  • ภาพเคลื่อนไหวของคุณเป็นแบบอิงตามงานศิลปะ (เช่น SVG หรือรูปภาพ) ใช่ไหม
    • ใช่: ใช้ SVG แบบง่าย (เช่น ไอคอนที่มีภาพเคลื่อนไหวขนาดเล็ก) ใช่ไหม
      • ใช่: AnimatedVectorDrawable.
      • ไม่: เฟรมเวิร์กภาพเคลื่อนไหวของบุคคลที่สาม เช่น Lottie
    • ไม่: ภาพเคลื่อนไหวต้องเล่นซ้ำไปเรื่อยๆ ใช่ไหม
      • ใช่: rememberInfiniteTransition.
      • ไม่: คุณกำลังสร้างภาพเคลื่อนไหวของเลย์เอาต์ใช่ไหม
        • ใช่: คุณกำลังสลับไปมาระหว่าง Composables ที่มีเนื้อหาต่างกันใช่ไหม
          • ใช่: คุณใช้ Navigation-Compose ใช่ไหม
          • ไม่: คุณกำลังสร้างภาพเคลื่อนไหวของการปรากฏหรือหายไปของเนื้อหาใช่ไหม
            • ใช่: AnimatedVisibility หรือ animateFloatAsState ที่มี Modifier.alpha()
            • ไม่: คุณกำลังสร้างภาพเคลื่อนไหวของการเปลี่ยนขนาดใช่ไหม
              • ใช่: Modifier.animateContentSize.
              • ไม่: คุณกำลังสร้างภาพเคลื่อนไหวของพร็อพเพอร์ตี้เลย์เอาต์อื่น (เช่น ออฟเซ็ตหรือระยะห่างจากขอบ) ใช่ไหม
                • ใช่: ดู "พร็อพเพอร์ตี้แต่ละรายการไม่เกี่ยวข้องกันเลยใช่ไหม"
                • ไม่: คุณกำลังสร้างภาพเคลื่อนไหวของรายการในรายการใช่ไหม
        • ไม่: คุณกำลังสร้างภาพเคลื่อนไหวของพร็อพเพอร์ตี้หลายรายการใช่ไหม
          • ใช่: พร็อพเพอร์ตี้แต่ละรายการไม่เกี่ยวข้องกันเลยใช่ไหม
            • ใช่: animate*AsState. สำหรับข้อความ ให้ใช้ TextMotion.Animated
            • ไม่: พร็อพเพอร์ตี้เหล่านั้นต้องเริ่มพร้อมกันใช่ไหม
              • ใช่: updateTransition ที่มี AnimatedVisibility, animateFloat, animateInt และอื่นๆ
              • ไม่: Animatable ที่มี animateTo ซึ่งเรียกใช้ด้วยฟังก์ชันระงับที่มีการกำหนดเวลาที่ต่างกัน
          • ไม่: ภาพเคลื่อนไหวมีค่าเป้าหมายที่กำหนดไว้ล่วงหน้าใช่ไหม
            • ใช่: animate*AsState. สำหรับข้อความ ให้ใช้ TextMotion.Animated
            • ไม่: ภาพเคลื่อนไหวเป็นแบบควบคุมด้วยท่าทางสัมผัสและเป็นแหล่งข้อมูลที่ถูกต้องเพียงแหล่งเดียวใช่ไหม
              • ใช่: Animatable ที่มี animateTo / snapTo
              • ไม่: เป็นภาพเคลื่อนไหวแบบครั้งเดียวที่ไม่มีการจัดการสถานะใช่ไหม

ดาวน์โหลดแผนภาพเวอร์ชัน PDF