---
metadata:
  - name: generator
    content: Diplodoc Platform v5.70.0
alternate:
  - https://divkit.tech/docs/en/concepts/extensions/gesture.md
  - https://divkit.tech/docs/ru/concepts/extensions/gesture.md
  - href: https://divkit.tech/docs/ru/concepts/extensions/gesture.md
    type: text/markdown
    title: Markdown version
  - href: https://divkit.tech/docs/ru/llms.txt?revision=r22102947
    rel: describedby
---
> **Documentation Index:** Fetch the complete configuration index at https://divkit.tech/docs/ru/llms.txt?revision=r22102947

# Жесты свайпа

Расширение `gesture` выполняет [действия](https://divkit.tech/docs/ru/concepts/divs/2/div-action.md), когда пользователь делает свайп по элементу вверх, вниз, влево или вправо.

{% cut "Пример" %}

```json translate=no
{
  "type": "text",
  "text": "Последний свайп: @{last_swipe}",
  "extensions": [
    {
      "id": "gesture",
      "params": {
        "swipe_left": [
          {
            "log_id": "swipe_left",
            "typed": {
              "type": "set_variable",
              "variable_name": "last_swipe",
              "value": {
                "type": "string",
                "value": "left"
              }
            }
          }
        ],
        "swipe_right": [
          {
            "log_id": "swipe_right",
            "typed": {
              "type": "set_variable",
              "variable_name": "last_swipe",
              "value": {
                "type": "string",
                "value": "right"
              }
            }
          }
        ]
      }
    }
  ]
}
```

В этом примере свайп влево или вправо записывает направление в строковую переменную `last_swipe`.

{% endcut %}

## Параметры {#params}

#|
||
**Параметры**
|
**Описание**
||

||
`id`
|
Идентификатор расширения.
||

||
`swipe_up`
|
Массив [действий](https://divkit.tech/docs/ru/concepts/divs/2/div-action.md), которые выполняются при свайпе вверх. Необязательный параметр.
||

||
`swipe_down`
|
Массив действий, которые выполняются при свайпе вниз. Необязательный параметр.
||

||
`swipe_left`
|
Массив действий, которые выполняются при свайпе влево. Необязательный параметр.
||

||
`swipe_right`
|
Массив действий, которые выполняются при свайпе вправо. Необязательный параметр.
||
|#

Задайте хотя бы один из параметров.

## Подключение {#connect}

{% list tabs %}

- Android

  build.gradle

  ```groovy translate=no
  dependencies {
      implementation "com.yandex.div:div-gesture:${versions.divkit}"
  }
  ```

  В коде:

  ```kotlin translate=no
  val gestureExtensionHandler = DivGestureExtensionHandler(
      parsingErrorLoggerFactory = object : ParsingErrorLoggerFactory {
          override fun create(key: String) = ParsingErrorLogger.LOG
      }
  )
  val divConfiguration = DivConfiguration.Builder(imageLoader)
      .extension(gestureExtensionHandler)
      .build()
  ```

  `ParsingErrorLoggerFactory` создает логгер, который получает ошибки разбора действий из параметра с именем `key`.

- iOS

  ```swift translate=no
  DivKitComponents(
    ...
    extensionHandlers: [
      GestureExtensionHandler()
    ]
  )
  ```

- Web

  ```js translate=no
  import { Gesture } from '@divkitframework/divkit/client';

  const map = new Map();

  map.set('gesture', Gesture);

  render({
      id: 'test',
      target: element,
      json: {},
      extensions: map
  });
  ```

{% endlist %}

<!-- source: ru/_includes/index/troubleshooting.md -->
## Узнать больше {#troubleshooting}

Вы можете обсуждать интересующие вас темы в сообществе пользователей DivKit в Telegram: [https://t.me/divkit_community_ru](https://t.me/divkit_community_ru).



[Репозиторий DivKit](https://github.com/divkit/divkit)




<!-- endsource: ru/_includes/index/troubleshooting.md -->
