Specifica l'azione da eseguire quando l'utente scorre sul layout. La velocità della sequenza di movimento e il movimento della vista scelta come target dipendono dalla velocità e dalla direzione dello scorrimento, soggetti ai limiti impostati con i parametri facoltativi.
Possono esserci più nodi <OnSwipe>
per un singolo <Transition>
e ogni <OnSwipe>
specifica una direzione di scorrimento diversa e un'azione diversa da eseguire quando l'utente esegue quel gesto.
Sintassi
<OnSwipe motion:touchAnchorId="@id/target_view" motion:touchAnchorSide="side" [ motion:dragDirection="direction" ] [ motion:dragScale="scale" ] [ motion:maxVelocity="maxVelocity" ] [ motion:maxAcceleration="maxAcceleration" ] />
Attributi
motion:touchAnchorId
- Vista spostata con lo scorrimento.
motion:touchAnchorSide
- Lato della visualizzazione target a cui è ancorato lo scorrimento.
MotionLayout
mantiene una distanza costante tra l'ancoraggio e il dito dell'utente. I valori accettati sono"left"
,"right"
,"top"
e"bottom"
. motion:dragDirection
- Direzione del movimento di scorrimento dell'utente. Se questo attributo è impostato,
<OnSwipe>
si applica solo agli scorrimenti nella direzione specificata. I valori accettati sono"dragLeft"
,"dragRight"
,"dragUp"
e"dragDown"
. motion:dragScale
controlla la distanza di spostamento della vista rispetto alla lunghezza dello scorrimento. Il valore predefinito è 1 e indica che la visualizzazione si sposta fino all'ultimo scorrimento. Se
dragScale
è inferiore a 1, la visualizzazione si sposta meno della distanza di scorrimento. Ad esempio,dragScale
pari a 0,5 indica che se lo scorrimento si sposta di 4 cm, la visualizzazione di destinazione si sposta di 2 cm.Se
dragScale
è maggiore di 1, la vista si sposta oltre la distanza di scorrimento. Ad esempio,dragScale
pari a 1,5 significa che se lo scorrimento si sposta di 4 cm, la visualizzazione dell'oggetto target si sposta di 6 cm.motion:maxVelocity
Velocità massima della visualizzazione target.
motion:maxAcceleration
Accelerazione massima della visualizzazione target.