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 nghệ thuật (tức là SVG hoặc hình ảnh) không?
    • Có: Biểu tượng có sử dụng SVG đơn giản (tức là biểu tượng có ảnh động vi mô) 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 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ó 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 việc thay đổi 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ụ: độ dời hoặc khoảng đệm) không?
                • Có: 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: Bạn có 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 chiến dịch 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 các 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ó 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?
              • Có: Animatable với animateTo / snapTo.
              • Không: Đây có phải là ảnh động một lần không có tính năng quản lý trạng thái không?

Tải bản PDF của sơ đồ.