Diseños de lista y flexibilidad

*Este contenido se traduce usando la IA (Beta) y puede contener errores. Para ver esta página en inglés, haz clic en aquí.

El UIListLayout posiciona objetos hermanos GuiObjects en filas horizontales o columnas verticales dentro de su contenedor padre. Cada vez que añades o eliminas un objeto hermano, el diseño se ajusta en consecuencia.

Dirección de llenado

La propiedad FillDirection determina la dirección en la que se renderizarán los hermanos del diseño de lista.

UIListLayouts ilustrando la dirección de llenado, ya sea horizontal o vertical.

El orden se determina mediante la propiedad SortOrder del diseño, que puede ser ascendente numérico, basado en el valor entero LayoutOrder de cada elemento, o alfanumérico basado en el Name del elemento.

Ejemplos de diseño de lista ilustrando la clasificación de LayoutOrder numérica o la clasificación alfanumérica por Nombre.

Alineación

Las propiedades HorizontalAlignment y VerticalAlignment determinan la alineación respectiva X y Y de los hermanos de la lista en relación entre sí y los límites generales de la lista dentro de su contenedor. Por ejemplo, una lista llenada horizontalmente con una VerticalAlignment de Center alinea centralmente a los hermanos de la lista entre sí y centra la lista verticalmente en su contenedor.

Diseño de lista ilustrando la VerticalAlignment de Centro.

Envueltura

La propiedad Wraps controla si los hermanos dentro del contenedor padre se envuelven a otra línea cuando su tamaño predeterminado excede el ancho/alto de los límites del contenedor.

Diagrama que muestra cómo Wraps afecta cómo se distribuyen los hermanos dentro de los límites del contenedor padre.

Relleno

La propiedad Padding determina la cantidad de espacio vacío entre cada elemento de la lista, establecido ya sea como una escala (porcentaje del tamaño del contenedor en la dirección actual) o un desplazamiento (valor de espaciamiento estático similar al tamaño de píxeles).

Diseños de flexibilidad

Integrar flexibilidad en un UIListLayout es una forma poderosa de llenar/distribuir equitativamente o alinear/estirar elementos de la lista a través de su línea, o flexibilizar elementos específicos a través de un espacio variable.

Llenado o distribución igual

Cuando la dirección de llenado del diseño de lista está configurada en Horizontal, la propiedad HorizontalFlex especifica cómo distribuir el espacio horizontal adicional en el contenedor padre. De manera similar, cuando la dirección de llenado está configurada en Vertical, la propiedad VerticalFlex especifica cómo distribuir el espacio vertical adicional.

Ejemplos de UIListLayout que muestran cómo cada opción de HorizontalFlex afecta el tamaño y espaciado de los objetos UI hermanos.

Un uso práctico de HorizontalFlex es una interfaz de ventana con pestañas donde la flexibilidad llena la barra de pestañas de manera equitativa, sin importar la cantidad de pestañas. No hay un enfoque más fácil que la flexibilidad en este caso, porque calcula automáticamente el ancho de cada pestaña sin configuraciones de ancho definidas por el desarrollador, y se ajusta automáticamente si cambia la cantidad de pestañas.

Alineación de línea de elementos

La propiedad ItemLineAlignment define la alineación en la dirección cruzada de los hermanos dentro de una línea, permitiéndote alinear objetos de diferentes anchos/alturas o hacer que objetos de menor ancho/alto llenen toda su línea.

Ejemplos de opciones para ItemLineAlignment en una dirección de llenado horizontal.

Un caso de uso práctico para ItemLineAlignment es estirar una serie de baldosas de tamaño inconsistente para que llenen toda su fila (Stretch), haciendo que el diseño sea más cohesivo.

Baldosas con diferentes alturas de contenido resultan en un diseño desigual y escalonado

Flexibilizar elementos individuales

Si bien flexibilizar un diseño completo es una utilidad poderosa, ciertos diseños son más adecuados para flexibilizar elementos individuales. En tales diseños, algunos elementos en la lista mantienen su tamaño básico mientras que otros elementos se flexibilizan para llenar espacios variables. Un uso práctico es un widget de barra deslizante con etiquetas uniformes labels en ambos extremos y una barra deslizante flexible que llena todo el ancho entre.

Ejemplo de UIFlexItem aplicado a un GuiObject específico bajo el control de un UIListLayout.

Para establecer un elemento de lista específico como flexible, inserta un UIFlexItem como hijo del elemento flexible, luego establece su propiedad FlexMode en Fill, Grow, Shrink o Custom.

Ejemplo de jerarquía de un UIFlexItem parentado a un GuiObject bajo el control de un UIListLayout.
©2026 Roblox Corporation. Roblox, el logotipo de Roblox y "Powering Imagination" son algunas de nuestras marcas registradas y no registradas en los Estados Unidos y otros países.