เพิ่มการรองรับปลายทางประเภทใหม่

ประเภท NavController ต้องใช้อย่างน้อย 1 อย่าง Navigator ออบเจ็กต์ที่จะทำงาน การดำเนินการนำทาง โดยค่าเริ่มต้น NavController รองรับการออกจาก กราฟการนำทาง โดยไปยังกิจกรรมอื่นโดยใช้ ActivityNavigator และเนื้อหาที่ซ้อนกัน ActivityNavigator.Destination

หากต้องการนำทางไปยังปลายทางประเภทอื่นๆ ให้เลือก Navigator เพิ่มเติมอย่างน้อย 1 รายการ ต้องเพิ่มออบเจ็กต์ใน NavController เช่น เมื่อใช้ส่วนย่อย เป็นปลายทาง NavHostFragment จะเพิ่มค่า FragmentNavigator ไปยัง NavController

หากต้องการเพิ่มออบเจ็กต์ Navigator ใหม่ไปยัง NavController ให้ใช้เมธอด getNavigatorProvider() ตามด้วย addNavigator()

โค้ดต่อไปนี้แสดงตัวอย่างการเพิ่มออบเจ็กต์ CustomNavigator ไปยัง NavController:

Kotlin

val customNavigator = CustomNavigator()
navController.navigatorProvider += customNavigator

Java

CustomNavigator customNavigator = new CustomNavigator();
navController.getNavigatorProvider().addNavigator(customNavigator);

คลาส Navigator ส่วนใหญ่มีคลาสย่อยปลายทางที่ซ้อนกัน คลาสย่อยนี้สามารถ เพื่อระบุแอตทริบิวต์เพิ่มเติมเฉพาะสำหรับปลายทางของคุณ สำหรับข้อมูลเพิ่มเติม ข้อมูลเกี่ยวกับคลาสย่อยปลายทาง โปรดดูเอกสารอ้างอิงสำหรับ Navigator ที่เหมาะสม

แหล่งข้อมูลเพิ่มเติม

หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับการนำทาง โปรดดูข้อมูลต่อไปนี้ แหล่งข้อมูลเพิ่มเติม

ตัวอย่าง

Codelab

วิดีโอ