Chọn API ảnh động

Sơ đồ dưới đây giúp bạn quyết định nên sử dụng API nào để triển khai ảnh động.

Sơ đồ quy trình mô tả cây quyết định để chọn API ảnh động thích hợp

Hình 1. Cây quyết định mô tả cách chọn API ảnh động phù hợp

Hãy làm theo các câu hỏi trong cây quyết định bên dưới để chọn API ảnh động phù hợp nhất với trường hợp sử dụng của bạn:

  • Ảnh động của tôi có giống nghệ thuật hơn, bao gồm nhiều phần tử hình ảnh không? chẳng hạn như SVG hoặc hình ảnh
    • Có: Lớp này có hình ảnh SVG đơn giản không? tức là biểu tượng có ảnh động vi mô
    • Không: Sự kiện có cần lặp lại vĩnh viễn không?
      • Có: rememberInfiniteTransition
      • Không: Đây có phải là ảnh động bố cục không?
        • Có: Thay đổi giữa nhiều thành phần kết hợp có nội dung khác nhau?
          • Có: Dùng navigation-compose?
          • Không: Hoạt ảnh xuất hiện / biến mất?
            • Có: AnimatedVisibility hoặc animateFloatAsState khi có Modifier.alpha()
            • Không: Kích thước ảnh động?
              • Có: Modifier.animateContentSize
              • Không: Thuộc tính bố cục khác, tức là độ lệch, khoảng đệm, v.v.
                • Có: Hãy xem phần "Các cơ sở lưu trú có hoàn toàn độc lập với nhau không?"
                • Không: Ảnh động của mục danh sách?
        • Không: Bạn có cần tạo ảnh động cho nhiều thuộc tính không?
          • Có: Các tài sản có hoàn toàn độc lập với nhau không?
            • Có: animate*AsState, đối với Văn bản, hãy sử dụng TextMotion.Animated
            • Không: Bắt đầu cùng lúc?
              • Có: Có: updateTransition với AnimatedVisibility, animateFloat, animateInt, v.v.
              • Không: Animatable với animateTo được gọi với thời gian khác nhau (sử dụng hàm tạm ngưng)
          • Không: Ảnh động có một tập hợp các giá trị mục tiêu được xác định trước không?
            • Có: animate*AsState, đối với Văn bản, hãy dùng TextMotion.Animated
            • Không: Ảnh động bằng cử chỉ? Ảnh động của bạn có phải là nguồn đáng tin cậy duy nhất?

Tải phiên bản PDF của biểu đồ.