Thêm tính năng hỗ trợ cho các loại đích đến mới

Kiểu NavController 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, NavController 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 đó.

Để đ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, hãy sử dụng phương thức getNavigatorProvider(), rồi tới phương thức addNavigator().

Đoạn mã sau đây là ví dụ về cách thêm đối tượng CustomNavigator 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 một số tài nguyên bổ sung sau đây.

Mẫu

Lớp học lập trình

Video