Thiết lập tính năng Xem trước thao tác quay lại

Theo mặc định, tính năng xem trước thao tác quay lại và ảnh động hệ thống sẽ được bật. Nếu ứng dụng của bạn chặn sự kiện quay lại và bạn chưa di chuyển sang tính năng xem trước thao tác quay lại, hãy cập nhật ứng dụng để dùng các API điều hướng quay lại được hỗ trợ

Ảnh động xem trước thao tác quay lại màn hình chính.
Ảnh động xem trước trên nhiều hoạt động.
Ảnh động dự đoán cho nhiều nhiệm vụ.

Bật ảnh động mặc định của hệ thống

Ảnh động hệ thống cho thao tác quay lại trang chủ, giữa các hoạt động và tác vụ có trên các thiết bị Android 15 trở lên đối với những ứng dụng đã di chuyển sang các API xử lý thao tác quay lại được hỗ trợ.

  • Quay lại màn hình chính: Đưa người dùng trở lại màn hình chính.
  • Nhiều hoạt động: Chuyển đổi giữa các hoạt động trong ứng dụng.
  • Nhiều nhiệm vụ: Chuyển đổi giữa các nhiệm vụ.

Theo mặc định, các ảnh động này được bật trên Android 15 trở lên. Trên các thiết bị chạy Android 13 hoặc 14, người dùng có thể bật các công cụ này thông qua Tuỳ chọn cho nhà phát triển.

Để nhận được các ảnh động hệ thống, hãy cập nhật phần phụ thuộc AndroidX Activity thành 1.6.0 trở lên.

Bật tính năng xem trước thao tác quay lại bằng Navigation Compose

Để sử dụng tính năng xem trước thao tác quay lại trong Navigation Compose, hãy đảm bảo rằng bạn đang dùng thư viện navigation-compose 2.8.0 trở lên.

Navigation Compose tự động chuyển đổi mờ giữa các màn hình khi người dùng vuốt ngược lại:

Hình 2. Ảnh động mặc định trong ứng dụng cho hiệu ứng làm mờ chéo trong SociaLite.

Khi điều hướng, bạn có thể tạo hiệu ứng chuyển đổi tuỳ chỉnh bằng popEnterTransitionpopExitTransition. Khi áp dụng cho NavHost, các đối tượng sửa đổi này cho phép bạn xác định cách màn hình nhập và thoát sẽ chuyển động. Bạn có thể dùng các hiệu ứng này để tạo nhiều hiệu ứng, chẳng hạn như thu phóng, làm mờ hoặc trượt.

Trong ví dụ này, scaleOut được dùng trong popExitTransition để thu nhỏ màn hình thoát khi người dùng quay lại. Ngoài ra, tham số transformOrigin xác định điểm mà quá trình điều chỉnh tỷ lệ ảnh động diễn ra xung quanh đó. Theo mặc định, điểm này là trung tâm của màn hình (0.5f, 0.5f). Bạn có thể điều chỉnh giá trị này để quá trình điều chỉnh theo tỷ lệ bắt đầu từ một điểm khác.

NavHost(
    navController = navController,
    startDestination = Home,
    popExitTransition = {
        scaleOut(
            targetScale = 0.9f,
            transformOrigin = TransformOrigin(pivotFractionX = 0.5f, pivotFractionY = 0.5f)
        )
    },
    popEnterTransition = {
        EnterTransition.None
    },
    modifier = modifier,
)

Mã này tạo ra kết quả sau:

Hình 3. Ảnh động tuỳ chỉnh trong ứng dụng SociaLite.

Cụ thể, popEnterTransitionpopExitTransition kiểm soát ảnh động khi bật ngăn xếp lui, chẳng hạn như bằng một cử chỉ quay lại. Bạn cũng có thể sử dụng enterTransitionexitTransition để xác định ảnh động cho các thành phần kết hợp nhập và thoát nói chung, không chỉ cho tính năng xem trước thao tác quay lại. Nếu bạn chỉ đặt enterTransitionexitTransition, thì các hiệu ứng này sẽ được dùng cho cả thao tác điều hướng thông thường và thao tác bật ngăn xếp lui. Tuy nhiên, việc sử dụng popEnterTransitionpopExitTransition cho phép bạn tạo ảnh động riêng biệt cho thao tác quay lại.

Tích hợp với hiệu ứng chuyển đổi phần tử dùng chung

Ảnh động chuyển đổi thành phần được chia sẻ tạo ra mối liên kết mượt mà về mặt hình ảnh giữa các thành phần kết hợp có nội dung được chia sẻ, thường được dùng cho hoạt động điều hướng.

Hình 4. Hiệu ứng chuyển đổi cho các thành phần dùng chung trong Navigation Compose.

Để sử dụng các phần tử dùng chung với Navigation Compose, hãy xem phần Xem trước thao tác quay lại bằng các phần tử dùng chung.

Hỗ trợ tính năng xem trước thao tác quay lại bằng các thành phần Material Compose

Nhiều thành phần trong thư viện Material Compose được thiết kế để hoạt động liền mạch với cử chỉ xem trước thao tác quay lại. Để bật ảnh động xem trước thao tác quay lại trong các thành phần này, hãy thêm phần phụ thuộc Material3 mới nhất (androidx.compose.material3:material3-*:1.3.0 trở lên) vào dự án của bạn.

Các thành phần Material hỗ trợ ảnh động xem trước thao tác quay lại bao gồm:

SearchBarModalBottomSheet sẽ tự động tạo ảnh động bằng cử chỉ xem trước thao tác quay lại. ModalNavigationDrawer, ModalDrawerSheet, DismissibleDrawerSheetDismissibleNavigationDrawer yêu cầu bạn truyền drawerState đến các thành phần kết hợp nội dung trang tính tương ứng.

Kiểm thử ảnh động xem trước thao tác quay lại

Nếu vẫn dùng Android 13 hoặc Android 14, bạn có thể kiểm thử ảnh động quay về màn hình chính.

Để kiểm tra ảnh động này, hãy làm theo các bước sau:

  1. Trên thiết bị của bạn, hãy chuyển đến phần Cài đặt > Hệ thống > Tuỳ chọn cho nhà phát triển (Settings > System > Developer options).
  2. Chọn Ảnh động vuốt ngược dự đoán.
  3. Chạy ứng dụng đã cập nhật và dùng cử chỉ vuốt ngược để xem ứng dụng hoạt động.

Trên Android 15 trở lên, tính năng này được bật theo mặc định.

Tài nguyên khác