Container
Контейнер - элемент, который может содержать другие элементы. Контейнеры могут быть вложенными друг в друга.
Добавляет элементы в контейнер.
Container add(Element... elements);Container add(List<Element> elements);el.add(new Text("Hello, world!"));el.add(new Element() .size(50) .backgroundImage("https://i.imgur.com/91jsciR.jpeg"));clearChildren
Заголовок раздела «clearChildren»Удаляет все элементы из контейнера.
Container clearChildren();el.clearChildren();clipMask
Заголовок раздела «clipMask»Устанавливает маску для контейнера. Это изображение, по которому будет обрезано содержимое контейнера. Прозрачные пиксели на изображении будут прозрачными у контейнера.
Container clipMask(String path);Container clipMask(GraphenResource image);el.clipMask(Textures.HEART);clipMask9Slice
Заголовок раздела «clipMask9Slice»NineSlice такое же, как и везде - backgroundImage9Slice.
Container clipMask9Slice(NineSlice slice);new NineSlice(left, top, right, bottom);new NineSlice(left, top, right, bottom, scale);el.clipMask9Slice(new NineSlice(10, 10, 10, 10));el.clipMask9Slice(new NineSlice(10, 10, 10, 10, 0.5f));contentRoot
Заголовок раздела «contentRoot»Если установить на true, то в этом контейнере будут храниться все глобальные id дочерних элементов, а также все переменные из выражений в дочерних элементах.
Container contentRoot(boolean value);el.contentRoot(true);flowDirection
Заголовок раздела «flowDirection»Устанавливает направление потока элементов. По умолчанию - FlowDirection.ROW.
Container flowDirection(FlowDirection direction);el.flowDirection(FlowDirection.COLUMN);flowWrap
Заголовок раздела «flowWrap»Устанавливает перенос элементов во Layout.FLOW. По умолчанию - true для ROW и false для COLUMN.
Container flowWrap(boolean value);el.flowWrap(false);Устанавливает расстояние между элементами в контейнере. По умолчанию - 0.
Container gap(float value);Container gap(String expr);Container gap(float x, float y);Container gap(String x, String y);el.gap(10);el.gap("10%");el.gap(10, 0);getChildren
Заголовок раздела «getChildren»Возвращает список дочерних элементов контейнера.
List<Element> getChildren();List<Element> children = el.getChildren();Устанавливает лейаут для контейнера. Он определяет, как будут располагаться дочерние элементы внутри контейнера.
-
Layout.FLOWЭлементы располагаются в одну строку или колонку. Направление можно переключать с помощьюContainer.flowDirection. Перенос элементов на новую строку по умолчанию включён для строки, но выключен для колонки. -
Layout.TEXTERIAВсе элементы привязываются к краям контейнера в зависимости от ихElement.position. -
Layout.TABLEЭлементы располагаются в виде таблицы. Структура элементов должна быть следующей:new Container().layout(Layout.TABLE).add(new Container() // строка заголовка// ширина из заголовка будет применена ко всем строкам.add(new Text("#").width(30)).add(new Text("Имя").width(200))).add(new Container() // строки с данными.add(new Text("1")).add(new Text("xtrafrancyz")));
По умолчанию: Layout.FLOW
Container layout(Layout layout);el.layout(Layout.TEXTERIA);overflowX
Заголовок раздела «overflowX»Устанавливает поведение горизонтального скроллбара контейнера.
-
Overflow.VISIBLEСкроллбар не отображается, элементы, выходящие за пределы контейнера, видны. -
Overflow.HIDDENСкроллбар не отображается, элементы, выходящие за пределы контейнера, скрываются. -
Overflow.AUTOСкроллбар отображается только при необходимости, элементы, выходящие за пределы контейнера, скрываются. -
Overflow.SCROLLСкроллбар отображается всегда, элементы, выходящие за пределы контейнера, скрываются.
По умолчанию: Overflow.VISIBLE
Container overflowX(Overflow overflow);el.overflowX(Overflow.AUTO);el.overflowX(Overflow.HIDDEN);overflowY
Заголовок раздела «overflowY»Устанавливает поведение вертикального скроллбара контейнера.
-
Overflow.VISIBLEСкроллбар не отображается, элементы, выходящие за пределы контейнера, видны. -
Overflow.HIDDENСкроллбар не отображается, элементы, выходящие за пределы контейнера, скрываются. -
Overflow.AUTOСкроллбар отображается только при необходимости, элементы, выходящие за пределы контейнера, скрываются. -
Overflow.SCROLLСкроллбар отображается всегда, элементы, выходящие за пределы контейнера, скрываются.
По умолчанию: Overflow.VISIBLE
Container overflowY(Overflow overflow);el.overflowY(Overflow.AUTO);el.overflowY(Overflow.HIDDEN);scrollbarX
Заголовок раздела «scrollbarX»Кастомизирует горизонтальный скроллбар. track - это полоса, по которой движется скроллбар, thumb - ползунок. Ширина будет считаться автоматически.
Можно использовать картинки и 9Slice для бОльшей красоты.
Container scrollbarX(Element track, Element thumb);// Стандартный скроллбарel.scrollbarX( new Element() .height(3) .background(0x88000000), new Element() .height(3) .background(0xFFFFEB3B));scrollbarY
Заголовок раздела «scrollbarY»Кастомизирует вертикальный скроллбар. track - это полоса, по которой движется скроллбар, thumb - ползунок. Высота будет считаться автоматически.
Можно использовать картинки и 9Slice для бОльшей красоты.
Container scrollbarY(Element track, Element thumb);el.scrollbarY( new Element() .width(5) .background(0x88000000), new Element() .width(5) .backgroundImage(Textures.SCROLL_THUMB) .backgroundImage9Slice(new NineSlice(3, 3, 3, 3, 0.2f)));submitCallback
Заголовок раздела «submitCallback»Устанавливает коллбек, который будет отправлен при нажатии Enter в любом из дочерних элементов с formName
или с помощьюю эдита Edit.submit().
Значения всех полей будут собраны и записаны в каллбек по ключу fields.
Также будет вызван ивент Trigger.SUBMIT на контейнере.
Container submitCallback(JsonObject callback);JsonObject callback = new JsonObject();callback.put("form", "sendMessage");el.submitCallback(callback);{ "form": "sendMessage", "fields": { "message": "текст", "name": "имя" }}