Перейти к содержанию

Модальные Rich Media для Android

Функция модальных Rich Media для Android позволяет разработчикам отображать HTML-контент в модальном всплывающем окне внутри своего приложения. Это окно не блокирует другие элементы пользовательского интерфейса и может быть легко закрыто с помощью жестов свайпа. Модальное окно предлагает множество опций для настройки внешнего вида, поведения, анимации и многого другого, обеспечивая высокую гибкость для пользователя.

Ключевые функции

Anchor link to
  • Неблокирующий UI: Модальное окно не блокирует взаимодействие с другими элементами пользовательского интерфейса.
  • Настраиваемые жесты свайпа: Настройте жесты свайпа для закрытия модального окна в различных направлениях.
  • Гибкое позиционирование: Выберите, где на экране появится модальное окно (вверху, по центру или внизу).
  • Пользовательские анимации: Управляйте тем, как модальное окно появляется и исчезает, с помощью различных типов анимации.
  • Закрытие свайпом: Пользователи могут смахнуть, чтобы закрыть модальное окно в любом направлении.
  • Настраиваемая длительность анимации: Точно настройте скорость анимации модального окна.
  • Управление строкой состояния: Возможность отображать модальное окно под или над строкой состояния.
  • Настраиваемая ширина окна: Возможность установить ширину модального окна на весь экран или по размеру контента.

Использование

Anchor link to

Включение модальных Rich Media

Anchor link to

Чтобы включить функцию модальных Rich Media, вам необходимо настроить ее в файле AndroidManifest.xml вашего приложения, добавив следующую запись метаданных:

<meta-data
android:name="com.pushwoosh.rich_media_type"
android:value="Modal" />

Конфигурация по умолчанию

Anchor link to

Внешний вид и поведение модального окна можно настроить, установив конфигурацию по умолчанию через RichMediaManager. Эта конфигурация позволяет вам указать, как ведет себя модальное окно, где оно появляется, как его можно закрыть и какой тип анимации используется.

Параметры настройки

Anchor link to

Позиция модального окна

Anchor link to

Вы можете установить позицию модального окна на экране с помощью setViewPosition(). Доступные значения для этого параметра:

  • TOP
  • CENTER (по умолчанию)
  • BOTTOM

Типы анимации закрытия

Anchor link to

Настройте, как модальное окно будет закрываться, с помощью setDismissAnimationType(). Доступные опции включают:

  • FADE_OUT (по умолчанию)
  • SLIDE_UP
  • SLIDE_DOWN
  • SLIDE_LEFT
  • SLIDE_RIGHT
  • NONE

Типы анимации появления

Anchor link to

Определите, как модальное окно будет появляться, с помощью setPresentAnimationType(). Доступные опции:

  • FADE_IN
  • SLIDE_UP
  • SLIDE_RIGHT
  • DROP_DOWN
  • SLIDE_LEFT
  • NONE (по умолчанию)

Настройка жестов свайпа

Anchor link to

Модальное окно можно закрыть с помощью жестов свайпа в разных направлениях, используя setSwipeGesture(). Доступные жесты свайпа:

  • UP
  • LEFT
  • RIGHT
  • DOWN
  • NONE (по умолчанию)

Длительность анимации

Anchor link to

Управляйте скоростью анимации, установив animationDuration() в миллисекундах. Длительность указывается как целочисленное значение, представляющее время в миллисекундах.

Ширина модального окна

Anchor link to

Ширину модального окна можно установить с помощью setWindowWidth(), который определяет, будет ли модальное окно занимать всю ширину экрана или только ту, что необходима для содержимого. Возможные значения:

  • FULL_SCREEN (по умолчанию)
  • WRAP_CONTENT

Обработка строки состояния

Anchor link to

По умолчанию модальное окно не будет перекрывать строку состояния. Чтобы разрешить модальному окну появляться под строкой состояния, установите свойство setStatusBarCovered() в true.

Примеры конфигурации

Anchor link to

Вот несколько примеров, демонстрирующих различные анимации, включая жесты свайпа, появление сдвигом, исчезновение с затуханием, разную продолжительность анимации и разную ширину экрана. Ниже вы также можете найти конфигурации, используемые для достижения этих эффектов.

Пример жеста свайпа

Anchor link to
Модальное окно Android с жестом свайпа вправо для закрытия
RichMediaManager.setDefaultRichMediaConfig(new ModalRichmediaConfig()
.setStatusBarCovered(false)
.setSwipeGesture(ModalRichMediaSwipeGesture.RIGHT)
.setViewPosition(ModalRichMediaViewPosition.CENTER)
.setDismissAnimationType(ModalRichMediaDismissAnimationType.SLIDE_RIGHT)
.setPresentAnimationType(ModalRichMediaPresentAnimationType.SLIDE_FROM_LEFT)
.setAnimationDuration(800)
.setWindowWidth(ModalRichMediaWindowWidth.WRAP_CONTENT));

Пример выпадающей анимации

Anchor link to
Модальное окно Android, появляющееся с выпадающей анимацией и закрывающееся свайпом вверх
RichMediaManager.setDefaultRichMediaConfig(new ModalRichmediaConfig()
.setSwipeGesture(ModalRichMediaSwipeGesture.UP)
.setViewPosition(ModalRichMediaViewPosition.TOP)
.setDismissAnimationType(ModalRichMediaDismissAnimationType.SLIDE_UP)
.setPresentAnimationType(ModalRichMediaPresentAnimationType.DROP_DOWN)
.setAnimationDuration(1000));

Пример Rich Media внизу экрана

Anchor link to
Модальное окно Android, отображаемое внизу, с затуханием при закрытии и анимацией появления снизу вверх
RichMediaManager.setDefaultRichMediaConfig(new ModalRichmediaConfig()
.setSwipeGesture(ModalRichMediaSwipeGesture.DOWN)
.setViewPosition(ModalRichMediaViewPosition.BOTTOM)
.setDismissAnimationType(ModalRichMediaDismissAnimationType.FADE_OUT)
.setPresentAnimationType(ModalRichMediaPresentAnimationType.SLIDE_UP)
.setAnimationDuration(2000));

Заключение

Anchor link to

Функция модальных Rich Media для Android предоставляет простой и гибкий способ представления HTML-контента в вашем приложении, не мешая пользовательскому опыту. Благодаря обширным возможностям настройки, включая жесты свайпа, анимацию, позиционирование и ширину окна, вы можете создать бесшовное и привлекательное взаимодействие для ваших пользователей.