<OnSwipe>
Restez organisé à l'aide des collections
Enregistrez et classez les contenus selon vos préférences.
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, une dragScale
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, une dragScale
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.
Contenue dans
Le contenu et les exemples de code de cette page sont soumis aux licences décrites dans la Licence de contenu. Java et OpenJDK sont des marques ou des marques déposées d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2025/07/27 (UTC).
[[["Facile à comprendre","easyToUnderstand","thumb-up"],["J'ai pu résoudre mon problème","solvedMyProblem","thumb-up"],["Autre","otherUp","thumb-up"]],[["Il n'y a pas l'information dont j'ai besoin","missingTheInformationINeed","thumb-down"],["Trop compliqué/Trop d'étapes","tooComplicatedTooManySteps","thumb-down"],["Obsolète","outOfDate","thumb-down"],["Problème de traduction","translationIssue","thumb-down"],["Mauvais exemple/Erreur de code","samplesCodeIssue","thumb-down"],["Autre","otherDown","thumb-down"]],["Dernière mise à jour le 2025/07/27 (UTC)."],[],[],null,["# <OnSwipe>\n\nSpecifies the action to perform when the user swipes on the layout. The speed of\nthe motion sequence and the motion of the targeted view are affected by the\nspeed and direction of the swipe, subject to the limits you set with optional\nparameters.\n\nThere can be multiple `\u003cOnSwipe\u003e` nodes for a single `\u003cTransition\u003e`, with each\n`\u003cOnSwipe\u003e` specifying a different swipe direction and a different action to\nperform when the user performs that swipe.\n\nSyntax\n------\n\n```xml\n\u003cOnSwipe\n motion:touchAnchorId=\"@id/target_view\"\n motion:touchAnchorSide=\"side\"\n[ motion:dragDirection=\"direction\" ]\n[ motion:dragScale=\"scale\" ]\n[ motion:maxVelocity=\"maxVelocity\" ]\n[ motion:maxAcceleration=\"maxAcceleration\" ]\n /\u003e\n```\n\nAttributes\n----------\n\n`motion:touchAnchorId`\n: View that is being moved by the swipe.\n\n`motion:touchAnchorSide`\n: Side of the target view that the swipe is anchored to. `MotionLayout` keeps a\n constant distance between the anchor and the user's finger. Acceptable values\n are `\"left\"`, `\"right\"`, `\"top\"`, and `\"bottom\"`.\n\n`motion:dragDirection`\n: Direction of the user's swipe motion. If this attribute is set, this\n `\u003cOnSwipe\u003e` only applies to swipes in the specified direction. Acceptable values\n are `\"dragLeft\"`, `\"dragRight\"`, `\"dragUp\"`, and `\"dragDown\"`.\n\n`motion:dragScale`\n\n: Controls the distance the view moves relative to the length of the swipe. The\n default value is 1, indicating that the view moves as far as the swipe does.\n If `dragScale` is less than 1, the view moves less than the swipe distance.\n For example, a `dragScale` of 0.5 means that if the swipe moves 4 cm, the\n target view moves 2 cm.\n\n If `dragScale` is greater than 1, the view moves farther than the swipe\n distance. For example, a `dragScale` of 1.5 means that if the swipe moves 4\n cm, the target view moves 6 cm.\n\n`motion:maxVelocity`\n\n: Maximum velocity of the target view.\n\n`motion:maxAcceleration`\n\n: Maximum acceleration of the target view.\n\nContained in\n------------\n\n- [`\u003cTransition\u003e`](/training/constraint-layout/motionlayout/ref/transition)"]]