Указывает действие, которое будет выполнено, когда пользователь проведет пальцем по макету. На скорость последовательности движений и движение целевого изображения влияет скорость и направление пролистывания с учетом ограничений, установленных вами с помощью дополнительных параметров.
Для одного <Transition>
может быть несколько узлов <OnSwipe>
, причем каждый <OnSwipe>
определяет разное направление пролистывания и разное действие, которое необходимо выполнить, когда пользователь выполняет это пролистывание.
Синтаксис
<OnSwipe motion:touchAnchorId="@id/target_view" motion:touchAnchorSide="side" [ motion:dragDirection="direction" ] [ motion:dragScale="scale" ] [ motion:maxVelocity="maxVelocity" ] [ motion:maxAcceleration="maxAcceleration" ] />
Атрибуты
-
motion:touchAnchorId
- Просмотр, который перемещается смахиванием.
-
motion:touchAnchorSide
- Сторона целевого представления, к которой привязано пролистывание.
MotionLayout
сохраняет постоянное расстояние между привязкой и пальцем пользователя. Допустимые значения:"left"
,"right"
,"top"
и"bottom"
. -
motion:dragDirection
- Направление движения пользователя. Если этот атрибут установлен, этот
<OnSwipe>
применяется только к проведению пальцем в указанном направлении. Допустимые значения:"dragLeft"
,"dragRight"
,"dragUp"
и"dragDown"
. -
motion:dragScale
Управляет расстоянием, на которое перемещается представление относительно длины пролистывания. Значение по умолчанию — 1, что означает, что представление перемещается настолько же далеко, насколько и пролистывание. Если
dragScale
меньше 1, представление перемещается на расстояние, меньшее, чем расстояние пролистывания. Например,dragScale
, равное 0,5, означает, что если прокрутка переместится на 4 см, целевой вид переместится на 2 см.Если значение
dragScale
больше 1, представление перемещается дальше, чем расстояние пролистывания. Например,dragScale
, равное 1,5, означает, что если прокрутка переместится на 4 см, целевой вид переместится на 6 см.-
motion:maxVelocity
Максимальная скорость обзора цели.
-
motion:maxAcceleration
Максимальное ускорение обзора цели.