Popup
Всплывающий виджет, позиционируемый относительно целевых элементов интерфейса или экранных координат.
Обзор
Popup представляет собой легковесный плавающий контейнер, привязанный к определенному целевому виджету или координате экрана.
Ключевые возможности:
- Относительное позиционирование по сторонам виджета-якоря (TOP, BOTTOM, LEFT, RIGHT).
- Контроль выхода за границы родительского контейнера.
- Автоматическое закрытие при клике вне границ всплывающего окна (closeOnOutsideClick).
- Слушатели событий открытия и закрытия (onOpenChanged).
Открытие привязанного всплывающего окна
Связанные ссылки
- OverlayLayer: Полноэкранный слой оверлеев, управляющий модальными подложками, диалогами, всплывающими окнами и проверкой попаданий.
- Tooltip: Всплывающая подсказка (тултип), отображающая вспомогательный текст, форматированный контент и таймеры задержки.
API
Popup()
Создает пустой экземпляр Popup.
Popup(Widget, Widget)
Создает Popup, привязанный к виджету-якорю и отображающий заданный контент.
| Параметр | Тип | Описание |
|---|---|---|
anchor |
Widget |
Виджет-якорь, относительно которого выполняется позиционирование. |
content |
Widget |
Вложенный виджет контента. |
Popup::anchor()
Возвращает виджет-якорь, к которому привязан попап.
Возвращает Widget: Целевой виджет-якорь..
Popup::anchor(Widget)
Устанавливает виджет-якорь для привязки попапа.
| Параметр | Тип | Описание |
|---|---|---|
anchor |
Widget |
Виджет-якорь, относительно которого выполняется позиционирование. |
Возвращает Popup: Текущий экземпляр виджета для цепочки вызовов..
Popup::arrangeInHost(RectView)
Позиционирует попап внутри границ родительского контейнера.
| Параметр | Тип | Описание |
|---|---|---|
bounds |
RectView |
Прямоугольная область границ родительского контейнера. |
Popup::close()
Закрывает попап.
Возвращает Popup: Текущий экземпляр виджета для цепочки вызовов..
Popup::closeOnOutsideClick()
Возвращает true, если попап закрывается при клике снаружи.
Возвращает boolean: True, если закрытие по клику вне виджета включено..
Popup::closeOnOutsideClick(boolean)
Устанавливает, должен ли попап закрываться при клике снаружи.
| Параметр | Тип | Описание |
|---|---|---|
closeOnOutsideClick |
boolean |
Закрывать ли виджет автоматически при клике вне его области. |
Возвращает Popup: Текущий экземпляр виджета для цепочки вызовов..
Popup::content()
Возвращает вложенный виджет контента.
Возвращает Widget: Вложенный виджет контента..
Popup::content(Widget)
Устанавливает вложенный виджет контента.
| Параметр | Тип | Описание |
|---|---|---|
content |
Widget |
Вложенный виджет контента. |
Возвращает Popup: Текущий экземпляр виджета для цепочки вызовов..
Popup::offset(float, float)
Устанавливает дополнительное смещение от вычисленного положения в пикселях.
| Параметр | Тип | Описание |
|---|---|---|
x |
float |
Горизонтальная координата X. |
y |
float |
Вертикальная координата Y. |
Возвращает Popup: Текущий экземпляр виджета для цепочки вызовов..
Popup::onOpenChanged(Runnable)
Устанавливает слушатель изменения состояния открытия попапа.
| Параметр | Тип | Описание |
|---|---|---|
onOpenChanged |
Runnable |
Колбэк, вызываемый при изменении состояния открытия всплывающего окна. |
Возвращает Popup: Текущий экземпляр виджета для цепочки вызовов..
Popup::open()
Открывает попап.
Возвращает Popup: Текущий экземпляр виджета для цепочки вызовов..
Popup::open(boolean)
Устанавливает состояние открытия попапа.
| Параметр | Тип | Описание |
|---|---|---|
open |
boolean |
Флаг целевого состояния открытия. |
Возвращает Popup: Текущий экземпляр виджета для цепочки вызовов..
Popup::opened()
Возвращает true, если попап в данный момент открыт.
Возвращает boolean: True, если виджет в данный момент открыт..
Popup::padding(EdgeInsets)
Устанавливает внутренние отступы содержимого всплывающего окна.
| Параметр | Тип | Описание |
|---|---|---|
padding |
EdgeInsets |
Внутренние отступы контента. |
Возвращает Popup: Текущий экземпляр виджета для цепочки вызовов..
Popup::placement()
Возвращает относительное положение попапа.
Возвращает Placement: Текущее положение размещения..
Popup::placement(Placement)
Устанавливает относительное положение попапа.
| Параметр | Тип | Описание |
|---|---|---|
placement |
Placement |
Положение всплывающего окна относительно виджета-якоря. |
Возвращает Popup: Текущий экземпляр виджета для цепочки вызовов..
Popup::toggle()
Переключает состояние открытия попапа.
Возвращает Popup: Текущий экземпляр виджета для цепочки вызовов..