Chọn API ảnh động

Sơ đồ sau đâ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 thích hợp.

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

Hãy sử dụng cây quyết định sau đây để chọn API ảnh động phù hợp nhất cho trường hợp sử dụng của bạn:

  • Ảnh động của bạn có dựa trên hình ảnh (tức là SVG hoặc hình ảnh) không?
    • Có: Ảnh động đó có sử dụng SVG đơn giản (tức là một biểu tượng có ảnh động siêu nhỏ) không?
    • Không: Ảnh động có cần lặp lại vô hạn không?
      • Có: rememberInfiniteTransition.
      • Không: Bạn có đang tạo ảnh động cho một bố cục không?
        • Có: Bạn có đang chuyển đổi giữa các thành phần kết hợp có nội dung khác nhau không?
          • Có: Bạn có đang sử dụng Navigation-Compose không?
          • Không: Bạn có đang tạo ảnh động cho sự xuất hiện hoặc biến mất của nội dung không?
            • Có: AnimatedVisibility hoặc animateFloatAsState với Modifier.alpha().
            • Không: Bạn có đang tạo ảnh động cho sự thay đổi về kích thước không?
              • Có: Modifier.animateContentSize.
              • Không: Bạn có đang tạo ảnh động cho một thuộc tính bố cục khác (ví dụ: độ lệch hoặc khoảng đệm) không?
                • Có: Hãy xem phần "Các thuộc tính có hoàn toàn độc lập với nhau không?".
                • Không: Bạn có đang tạo ảnh động cho các mục trong danh sách không?
        • Không: Bạn có đang tạo ảnh động cho nhiều thuộc tính không?
          • Có: Các thuộc tính 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: Các thuộc tính đó có cần bắt đầu cùng một lúc không?
              • 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 bằng cách sử dụng các hàm tạm ngưng.
          • Không: Ảnh động có 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 sử dụng TextMotion.Animated.
            • Không: Ảnh động có được điều khiển bằng cử chỉ và là nguồn đáng tin cậy duy nhất không?

Tải phiên bản PDF của sơ đồ xuống.