Spécifie l'action à effectuer lorsque l'utilisateur balaie la mise en page. La vitesse de la séquence de mouvement et le mouvement de la vue ciblée sont affectés par la vitesse et le sens du balayage, selon les limites que vous avez définies avec paramètres.
Il peut y avoir plusieurs nœuds <OnSwipe>
pour un même <Transition>
, de chaque nœud.
<OnSwipe>
spécifiant une direction de balayage et une action différentes pour
lorsque l'utilisateur balaie l'écran.
Syntaxe
<OnSwipe motion:touchAnchorId="@id/target_view" motion:touchAnchorSide="side" [ motion:dragDirection="direction" ] [ motion:dragScale="scale" ] [ motion:maxVelocity="maxVelocity" ] [ motion:maxAcceleration="maxAcceleration" ] />
Attributs
motion:touchAnchorId
- Vue déplacée par balayage.
motion:touchAnchorSide
- Côté de la vue cible sur laquelle le balayage est ancré.
MotionLayout
conserve un une distance constante entre l'ancre et le doigt de l'utilisateur. Valeurs possibles sont"left"
,"right"
,"top"
et"bottom"
. motion:dragDirection
- Sens du mouvement de balayage de l'utilisateur. Si cet attribut est défini,
<OnSwipe>
ne s'applique qu'aux balayages dans la direction spécifiée. Valeurs possibles sont"dragLeft"
,"dragRight"
,"dragUp"
et"dragDown"
. motion:dragScale
Contrôle la distance de déplacement de la vue par rapport à la longueur du balayage. La la valeur par défaut est 1, ce qui indique que la vue se déplace aussi loin que le balayage. Si
dragScale
est inférieur à 1, la vue se déplace moins que la distance du balayage. Par exemple, unedragScale
de 0,5 signifie que si le balayage se déplace de 4 cm, la vue cible se déplace de 2 cm.Si
dragScale
est supérieur à 1, la vue dépasse le mouvement de balayage. la distance. Par exemple, unedragScale
de 1,5 signifie que si le balayage passe de 4 en cm, la vue de la cible se déplace de 6 cm.motion:maxVelocity
Vitesse maximale de la vue cible.
motion:maxAcceleration
Accélération maximale de la vue cible.