GUILayout は GUI とは異なり、自動的にレイアウトしてくれるGUIパーツを使う事が出来ます。
この様に書くと自動的に縦に並べて表示してくれます。
function OnGUI () {
GUILayout.Button ("test1");
GUILayout.Button ("test2");
GUILayout.Button ("test3");
}
Space() を使うと余白を入れれます。
function OnGUI () {
GUILayout.Button ("test1");
GUILayout.Space (20);
GUILayout.Button ("test2");
GUILayout.Space (20);
GUILayout.Button ("test3");
}
水平に(1グループとして)並べる。
function OnGUI () {
GUILayout.BeginHorizontal ("box");
GUILayout.Button ("test1");
GUILayout.Space (20);
GUILayout.Button ("test2");
GUILayout.Space (20);
GUILayout.Button ("test3");
GUILayout.EndHorizontal ();
}
配置エリアを指定。
function OnGUI () {
GUILayout.BeginArea (Rect (50, 50, 100, 150));
GUILayout.Button ("test1");
GUILayout.Button ("test2");
GUILayout.Button ("test3");
GUILayout.EndArea ();
}
自動的に拡大/縮小する空白。指定位置にバネが入った様に他のGUIパーツが左右や上下に押さえ込まれます。
function OnGUI () {
GUILayout.BeginArea (Rect (0,0,100,150));
GUILayout.Button ("test1");
GUILayout.FlexibleSpace ();
GUILayout.Button ("test2");
GUILayout.Button ("test3");
GUILayout.EndArea ();
}
最小の高さを指定。
function OnGUI () {
GUILayout.BeginArea (Rect (0,0,100,150));
GUILayout.Button ("test1", GUILayout.MinHeight(80));
GUILayout.Button ("test2");
GUILayout.Butto n("test3");
GUILayout.EndArea();
}
他のGUIパーツに合わせてサイズを拡大させない。
function OnGUI () {
GUILayout.Button ("test1 hoge fuga");
GUILayout.Button ("test2");
GUILayout.Button ("test3", GUILayout.ExpandWidth(false));
}