Utilisez une transition pour définir les changements entre les panneaux. Vous pouvez définir une transition pour décrire comment et quand passer d'une variante de panneau à une autre. Vous pouvez définir une liste de transitions pour chaque panneau.
Utilisez la balise XML <Transitions>
comme conteneur pour une ou plusieurs définitions <Transition>
dans la configuration d'un seul <TaskPanel>
ou <DecorPanel>
.
Vous pouvez utiliser ce tag pour définir un ensemble de règles d'animation qui régissent quand et comment un panneau doit passer d'une variante visuelle distincte à une autre.
Attributs XML
La balise <Transitions>
peut définir des valeurs par défaut pour les éléments enfants <Transition>
suivants :
Attribut | État | Description |
---|---|---|
<defaultDuration> |
Facultatif | Spécifie une durée par défaut en millisecondes à appliquer à tous les Éléments La constante |
defaultInterpolator |
Facultatif | Fait référence à un ID de ressource XML d'interpolateur Android. Par exemple, Si aucun interpolateur par défaut n'est spécifié, le système utilise généralement un |
Éléments enfants XML
L'élément enfant de <Transitions>
est <Transition>
, l'élément de base utilisé pour définir un chemin d'animation spécifique entre les variantes PanelState
. Plusieurs éléments <Transition>
peuvent être imbriqués dans un même bloc <Transitions>
.
Exemple de code
Dans cet exemple, fromVariant
est facultatif. Si elle n'est pas définie, la variante actuelle est utilisée. Si fromVariant
est défini, la transition n'est utilisée que lorsque tous les paramètres correspondent. Les paramètres sont spécifiés dans l'événement et fromVariant
.
<Transitions defaultDuration="400"
defaultInterpolator="@android:anim/linear_interpolator">
<Transition fromVariant="closed_app"
toVariant="opened_app">
<Event id="app_opened" panel="application_panel" />
</Transition>
</Transitions>
Transition
Une transition décrit comment animer un changement d'état visuel entre deux variantes d'un panneau. Une transition décrit le chemin d'une variante à une autre. Pour ce faire, la transition spécifie des détails tels que l'animation à appliquer et l'événement nécessaire pour déclencher l'animation.
Pour un panneau, les transitions peuvent définir des animations pour des propriétés telles que les limites, la visibilité et l'alpha. Si aucun animateur personnalisé n'est spécifié, un animateur par défaut est utilisé.
Attributs XML
La balise <Transition>
utilise plusieurs attributs pour définir les caractéristiques de l'animation et les conditions dans lesquelles elle doit se produire.
Éléments enfants XML
<Event>
définit les propriétés de l'événement qui peuvent déclencher la transition.
Attribut | État | Description |
---|---|---|
<id> |
Obligatoire | Identifiant unique de l'événement pour activer le déclencheur. |
<panelId> |
Facultatif | Identifiant unique du panneau associé à l'événement. |
componentName |
Facultatif | Nom du composant associé à cet événement. |
packageName |
Facultatif | Nom du package associé à l'événement. |
Exemple de code
<Transitions defaultDuration="400"
defaultInterpolator="@android:anim/accelerate_interpolator">
<!-- A transition from 'closed_app' to 'opened_app' variant, triggered by 'open_app_event' -->
<Transition fromVariant="closed_app"
toVariant="opened_app">
<Event id="app_opened" panel="application_panel" />
<Transition>
<!-- A transition from 'opened_app' to 'closed_app' variant, using a custom animator -->
<Transition fromVariant="opened_app"
toVariant="closed_app"
animator="@animator/close_app">
<Event id="_System_PanelEmptyEvent"
panelId="application_panel" />
<Transition>
</Transitions>