Version: Unity 6.1 Alpha (6000.1)
LanguageEnglish
  • C#

GUILayout

class in UnityEngine

/

Implemented in:UnityEngine.IMGUIModule

Suggest a change

Success!

Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each suggested change from our users and will make updates where applicable.

Close

Submission failed

For some reason your suggested change could not be submitted. Please <a>try again</a> in a few minutes. And thank you for taking the time to help us improve the quality of Unity Documentation.

Close

Cancel

Description

The GUILayout class is the interface for Unity gui with automatic layout. Unlike the standard GUI class which requires manual coordinates, GUILayout arranges controls based on their content and container.

// This example creates a simple UI using the IMGUI system.
using UnityEngine;

public class Example : MonoBehaviour { private string playerName = ""; private int playerAge = 0;

void OnGUI() { // Begin a horizontal group GUILayout.BeginHorizontal();

// Add GUI elements that will be arranged horizontally GUILayout.Label("Name: ", GUILayout.Width(50)); playerName = GUILayout.TextField(playerName, GUILayout.Width(100));

GUILayout.Label("Age: ", GUILayout.Width(40)); playerAge = int.Parse(GUILayout.TextField(playerAge.ToString(), GUILayout.Width(30)));

// End the horizontal group GUILayout.EndHorizontal(); } }


Additional resources: GUI Layout tutorial.

Static Methods

BeginAreaBegin a GUILayout block of GUI controls in a fixed screen area.
BeginHorizontalBegin a Horizontal control group.
BeginScrollViewBegin an automatically laid out scrollview.
BeginVerticalBegin a vertical control group.
BoxMake an auto-layout box.
ButtonMake a single press button.
EndAreaClose a GUILayout block started with BeginArea.
EndHorizontalClose a group started with BeginHorizontal.
EndScrollViewEnd a scroll view begun with a call to BeginScrollView.
EndVerticalClose a group started with BeginVertical.
ExpandHeightOption passed to a control to allow or disallow vertical expansion.
ExpandWidthOption passed to a control to allow or disallow horizontal expansion.
FlexibleSpaceInsert a flexible space element.
HeightOption passed to a control to give it an absolute height.
HorizontalScrollbarMake a horizontal scrollbar.
HorizontalSliderA horizontal slider the user can drag to change a value between a min and a max.
LabelMake an auto-layout label.
MaxHeightOption passed to a control to specify a maximum height.
MaxWidthOption passed to a control to specify a maximum width.
MinHeightOption passed to a control to specify a minimum height.
MinWidthOption passed to a control to specify a minimum width.
PasswordFieldMake a text field where the user can enter a password.
RepeatButtonMake a repeating button. The button returns true as long as the user holds down the mouse.
SelectionGridMake a Selection Grid.
SpaceInsert a space in the current layout group.
TextAreaMake a multi-line text field where the user can edit a string.
TextFieldMake a single-line text field where the user can edit a string.
ToggleMake an on/off toggle button.
ToolbarMake a toolbar.
VerticalScrollbarMake a vertical scrollbar.
VerticalSliderA vertical slider the user can drag to change a value between a min and a max.
WidthOption passed to a control to give it an absolute width.
WindowMake a popup window that layouts its contents automatically.