แอปมักจะแสดงหน้าจอต่างๆ จำนวนมาก ซึ่งแต่ละหน้าจออาจใช้เทมเพลตที่แตกต่างกันซึ่งผู้ใช้สามารถไปยังส่วนต่างๆ ได้ขณะโต้ตอบกับอินเทอร์เฟซ
ScreenManager คลาสมีสแต็กหน้าจอที่คุณใช้เพื่อพุชหน้าจอได้
ซึ่งจะป๊อปอัปโดยอัตโนมัติเมื่อผู้ใช้เลือกปุ่มย้อนกลับบน
หน้าจอรถยนต์หรือใช้ปุ่มย้อนกลับของฮาร์ดแวร์ที่มีในรถยนต์บางรุ่น
โค้ดนี้แสดงวิธีเพิ่มการดำเนินการย้อนกลับไปยังเทมเพลตข้อความ รวมถึงการดำเนินการเพื่อแสดงหน้าจอใหม่เมื่อผู้ใช้เลือก
Kotlin
val template = MessageTemplate.Builder("Hello world!")
.setHeaderAction(Action.BACK)
.addAction(
Action.Builder()
.setTitle("Next screen")
.setOnClickListener { screenManager.push(NextScreen(carContext)) }
.build())
.build()
Java
MessageTemplate template = new MessageTemplate.Builder("Hello world!")
.setHeaderAction(Action.BACK)
.addAction(
new Action.Builder()
.setTitle("Next screen")
.setOnClickListener(
() -> getScreenManager().push(new NextScreen(getCarContext())))
.build())
.build();
ออบเจ็กต์ Action.BACK คือ Action มาตรฐานที่เรียกใช้ ScreenManager.pop โดยอัตโนมัติ
คุณลบล้างลักษณะการทำงานนี้ได้โดยใช้อินสแตนซ์ OnBackPressedDispatcher ที่พร้อมใช้งานจาก CarContext
เพื่อส่งเสริมการขับขี่ที่ปลอดภัย กองหน้าจอต้องมีไม่เกิน 5 หน้าจอ ดูข้อมูลเพิ่มเติมได้ที่ข้อจำกัดของเทมเพลต