Онбординги, настроенные с помощью билдера, генерируют события, на которые может реагировать ваше приложение. Способ обработки этих событий зависит от выбранного подхода к отображению:
Модальное представление: требует настройки обработчиков событий, которые обрабатывают события для всех представлений онбординга
React-компонент: обрабатывает события через встроенные параметры колбэков непосредственно в виджете
Для модального представления реализуйте метод обработчиков событий.
Повторный вызов setEventHandlers переопределит ранее установленные обработчики, заменив как стандартные, так и пользовательские обработчики для указанных событий.
В следующих разделах описаны различные типы событий, которые можно обрабатывать вне зависимости от используемого подхода к отображению.
Обработка пользовательских действий
В конструкторе можно добавить действие custom к кнопке и задать ему идентификатор.
Затем этот ID можно использовать в коде и обрабатывать его как пользовательское действие. Например, если пользователь нажимает кастомную кнопку — Login или Allow notifications — обработчик события сработает с параметром actionId, соответствующим Action ID из билдера. Вы можете задавать собственные ID, например "allowNotifications".
Онбординг считается закрытым, когда пользователь нажимает кнопку с назначенным действием Close.
Обратите внимание, что вам нужно самостоятельно обработать ситуацию, когда пользователь закрывает онбординг. Например, необходимо прекратить его отображение.
Обрабатывайте это событие, если хотите открыть пейвол внутри онбординга. Если нужно открыть пейвол после его закрытия, есть более простой способ — обработайте действие закрытия и откройте пейвол, не опираясь на данные события.
Когда пользователь нажимает кнопку, открывающую пейвол, вы получите ID действия кнопки, который вы задали вручную. Наиболее удобный подход — сделать ID действия равным ID плейсмента пейвола.
Обратите внимание, что в iOS одновременно на экране может отображаться только одно представление (пейвол или онбординг). Если вы показываете пейвол поверх онбординга, вы не можете программно управлять онбордингом в фоне. Попытка закрыть онбординг закроет пейвол вместо него, оставив онбординг видимым. Чтобы избежать этого, всегда закрывайте представление онбординга перед показом пейвола.
Обратите внимание: в iOS одновременно на экране может отображаться только одно представление — пейвол или онбординг. Если вы показываете пейвол поверх онбординга, программно управлять онбордингом в фоне не получится. Попытка закрыть онбординг закроет пейвол, и онбординг останется видимым. Чтобы избежать этого, всегда закрывайте онбординг перед показом пейвола.
Объект event может быть одного из следующих типов:
Тип
Описание
onboardingStarted
Когда онбординг загружен
screenPresented
Когда отображается любой экран
screenCompleted
Когда экран завершён. Включает необязательный elementId (идентификатор завершённого элемента) и необязательный reply (ответ пользователя). Срабатывает, когда пользователь выполняет любое действие для выхода с экрана.
secondScreenPresented
Когда отображается второй экран
userEmailCollected
Срабатывает, когда email пользователя собирается через поле ввода