Cette section décrit les utilisations optimales de l'UI évolutive.
- Créer des mises en page multipanaux persistantes
- Implémenter une scène de maison dynamique
- Appliquer des calques contextuels
- Concevoir des interactions complexes avec les panneaux
Activer la fonctionnalité
Définissez l'indicateur requis dans votre fichier de configuration de l'interface utilisateur du système (config.xml
ou similaire) :
<bool name="config_enableScalableUI">true</bool>
Vérifier la configuration du système
Vérifiez que votre système inclut la fonctionnalité requise et désactive les fonctionnalités de fenêtrage anciennes ou conflictuelles :
Le système doit inclure la fonctionnalité
android.software.car.splitscreen_multitasking
.Vérifiez que toutes les anciennes fonctionnalités de fenêtrage ou d'écran partagé qui entrent en conflit avec le nouveau modèle de tâche racine sont désactivées.
Définir des panneaux et des variantes
Pour déclarer tous les fichiers de configuration contenant des configurations Panel
, ajoutez une ressource de tableau nommée window_states
.
Pour résoudre le mappage des rôles, les panneaux doivent utiliser l'attribut role
à mapper sur les applications qu'ils hébergent. role
fait référence à un tableau de noms de composants, tel que role="@array/nav_components
.
Définir des transitions
Dans chaque définition de panneau, définissez les transitions en mappant les événements système ou personnalisés à une variante cible. Par exemple, pour définir le comportement du panneau de navigation :
<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>