پیاده سازی ناوبری صفحه

برنامه‌ها اغلب چندین صفحه نمایش مختلف را ارائه می‌دهند که هر کدام احتمالاً از قالب‌های مختلفی استفاده می‌کنند که کاربر می‌تواند هنگام تعامل با رابط کاربری، از میان آنها عبور کند.

کلاس ScreenManager یک پشته صفحه نمایش ارائه می‌دهد که می‌توانید از آن برای نمایش صفحاتی استفاده کنید که می‌توانند به طور خودکار هنگام انتخاب دکمه برگشت روی صفحه نمایش خودرو یا استفاده از دکمه برگشت سخت‌افزاری موجود در برخی خودروها، ظاهر شوند.

این کد نحوه اضافه کردن یک عمل برگشت به یک الگوی پیام و همچنین عملی برای نمایش یک صفحه جدید هنگام انتخاب توسط کاربر را نشان می‌دهد:

کاتلین

val template = MessageTemplate.Builder("Hello world!")
     .setHeaderAction(Action.BACK)
     .addAction(
         Action.Builder()
             .setTitle("Next screen")
             .setOnClickListener { screenManager.push(NextScreen(carContext)) }
             .build())
     .build()

جاوا

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 لغو کرد.

برای ترویج رانندگی ایمن، مجموعه صفحه نمایش نمی‌تواند بیش از پنج صفحه نمایش داشته باشد. برای کسب اطلاعات بیشتر، به محدودیت‌های الگو مراجعه کنید.