一般窗口都是矩形,有四个角(左上角,右上角,左下角,右下角)。如果要使控件分别对齐在这4个角当中,就需要使用FlexibleSpace()方法对其偏移了。
FlexibleSpace()的原理是将两个控件完全左右或者上下对齐在游戏窗口中,它会自动的获取当前屏幕的宽度和高度保证控件不会超过游戏窗口。
示例:
using UnityEngine;
using System.Collections;
public class 对齐方式 : MonoBehaviour {
void OnGUI(){
//开始一个显示区域
GUILayout.BeginArea (new Rect(0,0,Screen.width,Screen.height));
GUILayout.BeginHorizontal (); //开始最外层横向布局
GUILayout.BeginVertical (); //嵌套一个纵向布局
GUILayout.Box ("text1");
GUILayout.FlexibleSpace (); //两个box控件上下对齐
GUILayout.Box ("text2");
GUILayout.EndVertical (); //结束嵌套的纵向布局
GUILayout.FlexibleSpace (); //布局之间左右对齐
GUILayout.BeginVertical (); //嵌套一个纵向布局
GUILayout.Box ("text3");
GUILayout.FlexibleSpace (); //两个box控件上下对齐
GUILayout.Box ("text4");
GUILayout.EndVertical (); //结束嵌套的纵向布局
GUILayout.EndHorizontal (); //结束最外层横向布局
//结束显示区域
GUILayout.EndArea ();
}
}