Uso de MicroUI - Honguito98/Seta-MicroUI GitHub Wiki
(De la manera más horrible :D )
Antes de explicar el uso de MicroUI se debe tomar en cuenta los siguientes conceptos:
-
Elemento: se le dice a todo componente que aparece en una ventana, así como botones, deslizadores, incluso la misma ventana.
-
WindowID: expresa o retiene un número del tipo
long
cuyo mismo permite la identificación entre ventanas y botones. -
CurrentID: expresa o retiene un número del tipo
long
cuyo mismo permite identificar un elemento seleccionado de la interfaz. -
CursorArea.java: es un ayudante (o helper) para MicroUI.java, el cual permite detectar las pulsaciones del mouse o entrada táctil.
-
WindowProperties, ButtonProperties, SliderBarProperties, etc., Son clases que contendrán temporalmente las propiedades de cada objeto, así como su color, textura, posición, etc.
-
TextureAtlas: el administrador de ventanas (MicroUI.java) necesita de un átlas de texturas para usarlas en los elementos de la interfaz.
SpriteBatch sb;
TextureAtlas skin;
MicroUI ui;
ButtonProperties pauseP;
ButtonProperties playP;
ButtonProperties stopP;
ButtonProperties prevP;
ButtonProperties nextP;
ButtonProperties menuP;
@Override
public void create () {
skin = new TextureAtlas("atlas.txt"); /* Load textures */
ui = new MicroUI(skin); /* 'send' these textures to MicroUI instance */
pauseP = new ButtonProperties();
pauseP.posX = 120;
pauseP.posY = 50;
pauseP.texture = "move";
stopP = new ButtonProperties();
stopP.posX = 240 + 20;
stopP.posY = 50;
stopP.texture = "resize";
prevP = new ButtonProperties();
prevP.posX = 360 + 40;
prevP.posY = 50;
prevP.texture = "setalogo";
nextP = new ButtonProperties();
nextP.posX = 480 + 60;
nextP.posY = 50;
nextP.texture = "move";
menuP = new ButtonProperties();
menuP.posX = 1200;
menuP.posY = 700;
menuP.texture = "resize";
sbp = new SliderBarProperties();
sbp.bar = "shiftline";
sbp.barSize = 256;
sbp.knob = "shift";
sbp.posY = 100;
/* Create a window properties */
wdp = new WindowProperties();
wdp.windowTitle = "Hello World!";
wdp.winTexture = "sbar";
wdp.titleBarTexture = "sbar";
wdp.bounding.height = 800;
wdp.bounding.width = 1280;
/* WindowProperties, window name */
ui.createWindow(wdp, "hello");
/* Once created our window, need open this window to show */
/* The order of '.openWindow' must be after '.createWindow', doesn't */
/* matter if .openWindow goes before or after '.create*' element *
ui.openWindow("hello");
ui.getWindow("hello").createButton(pauseP, "pause");
ui.getWindow("hello").createButton(stopP, "stop");
ui.getWindow("hello").createButton(prevP, "prev");
ui.getWindow("hello").createButton(nextP, "next");
ui.getWindow("hello").createButton(menuP, "menu");
}
@Override
public void render () {
sb.begin();
ui.begin();
sb.end();
if (ui.isActive("hello")) { /* is active this window? */
if (ui.getButtonPress("hello", "pause")) System.out.println("'pause' button pressed");
if (ui.getButtonPress("hello", "stop"));
if (ui.getButtonPress("hello", "prev"));
if (ui.getButtonPress("hello", "next"));
if (ui.getButtonPress("hello", "menu"));
}
ui.end();
}
Para crear ventanas:
ui.createWindow(WindowProperties, "nombreDeLaVentana");
Para obtener la acción de un botón:
ui.getButtonPress("nombreDeLaVentana", "nombreDelBotón");
Para personalizar nuestras ventanas, en la siguiente sección encontrará información detallada: [Personalizando Ventanas] (Personalización)