В этом разделе описывается оптимальное использование масштабируемого пользовательского интерфейса.
- Создавайте постоянные многопанельные макеты
- Реализуйте динамичную домашнюю сцену
- Применять контекстные наложения
- Проектирование сложных взаимодействий панелей
Включить функцию
Установите требуемый флаг в файле конфигурации пользовательского интерфейса системы ( 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>