В этом разделе описываются оптимальные способы использования масштабируемого пользовательского интерфейса.
- Создание постоянно отображаемых многопанельных макетов
- Реализуйте динамическую домашнюю сцену.
- Примените контекстные наложения
- Разработка сложных взаимодействий между панелями
Включите эту функцию
Установите необходимый флаг в файле конфигурации системного интерфейса ( config.xml или аналогичном):
<bool name="config_enableScalableUI">true</bool>
Проверьте конфигурацию системы.
Убедитесь, что ваша система включает необходимую функцию и отключает все устаревшие или конфликтующие оконные функции:
Система должна включать функцию
android.software.car.splitscreen_multitaskingУбедитесь, что все устаревшие функции оконного режима или разделения экрана, конфликтующие с новой моделью корневой задачи, отключены.
Определите панели и варианты.
Чтобы объявить все конфигурационные файлы, содержащие настройки Panel , добавьте ресурс массива с именем window_states .
Для сопоставления ролей панели должны использовать атрибут role , который будет сопоставляться с приложениями, которые они размещают. role ссылается на массив имен компонентов, например role="@array/nav_components .
Определите переходы
В каждом определении панели задайте переходы, сопоставив системные или пользовательские события с целевым вариантом. Например, чтобы определить поведение для навигационной панели:
<Transitions>
<Transition onEvent="_System_TaskOpenEvent" toVariant="@id/opened"/>
<Transition onEvent="_System_HomeEvent" toVariant="@id/closed"/>
<Transition onEvent="@string/event_system_nav_focus_lost" toVariant="@id/minimized"/>
</Transitions>