NavControllers
dựa vào
một hoặc nhiều đối tượng Navigator
để thực hiện thao tác điều hướng. Theo mặc định, tất cả
NavControllers
đều hỗ trợ
rời biểu đồ điều hướng thông qua cách chuyển đến một hoạt động khác bằng
lớp ActivityNavigator
và lớp
ActivityNavigator.Destination
lồng trong đó. Để có thể điều hướng đến bất kỳ loại đích đến nào khác, bạn phải thêm một hoặc nhiều
đối tượng Navigator
khác
vào
NavController
. Ví dụ:
khi sử dụng các mảnh làm đích đến,
NavHostFragment
sẽ tự động thêm lớp
FragmentNavigator
vào
NavController
của nó.
Để thêm đối tượng Navigator
mới vào
NavController
, bạn phải
sử dụng phương thức
getNavigatorProvider()
của lớp NavController
tương ứng,
rồi tới phương thức addNavigator()
của lớp đó.
Đoạn mã sau đây là ví dụ về cách thêm đối tượng CustomNavigator
hư cấu vào NavController
:
Kotlin
val customNavigator = CustomNavigator() navController.navigatorProvider += customNavigator
Java
CustomNavigator customNavigator = new CustomNavigator(); navController.getNavigatorProvider().addNavigator(customNavigator);
Hầu hết các lớp Navigator
đều có một lớp con đích đến lồng bên trong. Bạn có thể sử dụng lớp con này
để chỉ định các thuộc tính bổ sung dành riêng cho đích đến của mình. Để biết thêm thông tin
về các lớp con Đích đến, hãy xem tài liệu tham khảo
về lớp
Navigator
thích hợp.
Tài nguyên khác
Để tìm hiểu thêm về hoạt động điều hướng, hãy xem các tài nguyên bổ sung sau đây.