Điều hướng là các hành động tương tác cho phép người dùng di chuyển qua lại, vào và ra khỏi các phần nội dung khác nhau trong ứng dụng.
Thành phần Điều hướng của Android Jetpack giúp bạn triển khai tính năng điều hướng, từ nhấp nút đơn giản đến các mẫu phức tạp hơn, chẳng hạn như thanh ứng dụng và ngăn điều hướng.
Thành phần Điều hướng cũng đảm bảo trải nghiệm người dùng nhất quán và dự đoán được bằng cách tuân thủ một bộ nguyên tắc thiết lập sẵn.
Các phần chính của thành phần điều hướng
Thành phần Điều hướng bao gồm 3 phần chính được mô tả dưới đây:
- Biểu đồ điều hướng: Một tài nguyên XML chứa tất cả thông tin liên quan đến điều hướng tại một vị trí tập trung. Biểu đồ này bao gồm mọi vùng nội dung riêng lẻ trong ứng dụng (được gọi là đích đến), cũng như các đường dẫn khả thi mà người dùng có thể di chuyển đến thông qua ứng dụng.
NavHost
: Một vùng chứa rỗng cho thấy các đích đến từ biểu đồ điều hướng. Thành phần điều hướng chứa cách triển khaiNavHost
mặc định,NavHostFragment
mà hiển thị đích đến của mảnh.NavController
: Một đối tượng quản lý việc điều hướng ứng dụng trongNavHost
.NavController
điều phối việc hoán đổi nội dung đích đến trongNavHost
khi người dùng di chuyển giữa các phần khác nhau trong ứng dụng.
Khi di chuyển giữa các phần khác nhau trong ứng dụng, bạn cho NavController
biết rằng bạn muốn di chuyển theo một đường dẫn cụ thể trong biểu đồ điều hướng hay di chuyển trực tiếp đến một đích đến cụ thể nào đó. Sau đó, NavController
sẽ hiển thị đích đến thích hợp trong NavHost
.
Thành phần điều hướng mang lại một số lợi ích bao gồm:
- Xử lý giao dịch mảnh.
- Xử lý chính xác các thao tác Lên và Quay lại theo mặc định.
- Cung cấp tài nguyên chuẩn hoá để tạo ảnh động và hiệu ứng chuyển tiếp.
- Triển khai và xử lý liên kết sâu.
- Bao gồm các mẫu Giao diện người dùng điều hướng (chẳng hạn như ngăn điều hướng và thanh điều hướng ở dưới cùng) giúp giảm thiểu công việc cần làm.
- Bao gồm Safe Args – một trình bổ trợ Gradle giúp đảm bảo sự an toàn về kiểu khi điều hướng và truyền dữ liệu giữa các đích đến.
- Cung cấp khả năng hỗ trợ
ViewModel
– bạn có thể thiết lập phạm vi củaViewModel
trong biểu đồ điều hướng để chia sẻ dữ liệu liên quan đến giao diện người dùng giữa các đích đến trong biểu đồ.
Ngoài ra, bạn có thể dùng Trình chỉnh sửa điều hướng của Android Studio để xem và chỉnh sửa biểu đồ điều hướng.
Thành phần Điều hướng tương thích với phiên bản ổn định mới nhất của Android Studio.
Các bước tiếp theo
Để có thêm tài liệu và tài nguyên tham khảo liên quan đến thành phần điều hướng, hãy xem các tài nguyên sau.
Bắt đầu
Chủ đề khác
- Nguyên tắc điều hướng
- Thiết kế cho nhiều kiểu dáng
- Đảm bảo khả năng tương thích với thao tác bằng cử chỉ
- Thiết kế biểu đồ điều hướng
- Biểu đồ điều hướng lồng nhau
- Thao tác chung
- Thao tác có điều kiện
- Truyền dữ liệu giữa các đích đến
- Tạo liên kết sâu đến một đích đến
- Tạo hiệu ứng động cho quá trình chuyển đổi giữa các đích đến
- Cập nhật các thành phần giao diện người dùng với NavigationUI
- Dùng ViewPager để tạo thành phần hiển thị dạng vuốt có các thẻ
- Tương tác theo cách lập trình với thành phần Điều hướng
- Kiểm thử thao tác điều hướng
- Thêm tuỳ chọn hỗ trợ cho các loại đích đến mới
- Cung cấp thao tác quay lại tuỳ chỉnh
- Di chuyển sang thành phần điều hướng
Mẫu
Lớp học lập trình
- Tìm hiểu về thành phần Điều hướng của Jetpack
- Mảnh và thành phần điều hướng
- Tạo ứng dụng thích ứng bằng tính năng điều hướng động
Video
- Chỉ dẫn điều hướng
- 10 phương pháp hay nhất để chuyển sang một hoạt động duy nhất
- Hoạt động duy nhất: Lý do, thời điểm và cách thức (hội nghị dành cho nhà phát triển Android năm 2018)
- Android Jetpack: Quản lý điều hướng giao diện người dùng bằng trình điều khiển điều hướng (Google I/O năm 18)