تنفيذ ميزة التنقل على الشاشة

تعرض التطبيقات غالبًا عددًا من الشاشات المختلفة، وقد يستخدم كل منها نماذج مختلفة يمكن للمستخدم التنقّل بينها أثناء تفاعله مع الواجهة.

يوفر الصف 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.

لتعزيز القيادة الآمنة، يمكن أن تتألف حزمة الشاشة من خمس شاشات كحد أقصى. لمزيد من المعلومات، اطّلِع على القيود المفروضة على النماذج.