11.自定义整体样式-自动布局
11.1 知识点
GUILayout自动布局
// GUILayout是一个类似GUI的类,里面的API和GUI类似,只是可以帮我们自动布局,不用手动调整位置,方便一点。
// GUILayout 类是 Unity GUI 的接口,并且具有自动布局功能。
// 主要用于进行编辑器开发,如果用它来做游戏UI不太合适。
// GUILayout和GUI可以相互配合着使用
GUI.BeginGroup(new Rect(100, 100, 500, 300));
GUILayout.BeginArea(new Rect(10, 10, 400, 300)); // 在一个固定的屏幕区域中开始 GUI 控件的 GUILayout 块。
GUILayout.BeginVertical(); // 开始一个垂直控件组。
GUILayout.Button("竖直123", GUILayout.Width(200)); // 控件的固定宽高
GUILayout.Button("竖直245666656565");
GUILayout.Button("竖直235", GUILayout.ExpandWidth(false)); // 允许或禁止水平拓展
GUILayout.EndVertical(); // 闭合以 BeginVertical 开始的组。
GUILayout.BeginHorizontal(); // 开始一个水平控件组。
GUILayout.Button("水平123", GUILayout.Height(300)); // 控件的固定宽高
GUILayout.Button("水平245666656565");
GUILayout.Button("水平235", GUILayout.ExpandWidth(false)); // 允许或禁止水平拓展
GUILayout.EndHorizontal(); // 闭合以 BeginHorizontal 开始的组。
GUILayout.EndArea(); // 闭合以 BeginArea 开始的 GUILayout 块。
GUI.EndGroup();
效果
GUILayoutOption布局选项
//控件的固定宽高
GUILayout.Width(300);
GUILayout.Height(200);
//允许控件的最小宽高
GUILayout.MinWidth(50);
GUILayout.MinHeight(50);
//允许控件的最大宽高
GUILayout.MaxWidth(100);
GUILayout.MaxHeight(100);
//允许或禁止水平竖直拓展
GUILayout.ExpandWidth(true);//允许
GUILayout.ExpandHeight(false);//禁止
11.2 知识点代码
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Lesson11_自定义整体样式_自动布局 : MonoBehaviour
{
private void OnGUI()
{
#region 知识点一 GUILayout自动布局
//GUILayout是一个类似GUI的类 里面的API和GUI类似 只是可以帮我们自动布局 不用手动调整位置 方便一点
//GUILayout 类是 Unity GUI 的接口,并且具有自动布局功能。
//主要用于进行编辑器开发 如果用它来做游戏UI不太合适
//GUILayout和GUI可以相互配合着使用
GUI.BeginGroup(new Rect(100, 100, 500, 300));
GUILayout.BeginArea(new Rect(10, 10, 400, 300));//在一个固定的屏幕区域中开始 GUI 控件的 GUILayout 块。
GUILayout.BeginVertical();//开始一个垂直控件组。
GUILayout.Button("竖直123", GUILayout.Width(200));//控件的固定宽高
GUILayout.Button("竖直245666656565");
GUILayout.Button("竖直235", GUILayout.ExpandWidth(false));//允许或禁止水平拓展
GUILayout.EndVertical();//闭合以 BeginVertical 开始的组。
GUILayout.BeginHorizontal();//开始一个水平控件组。
GUILayout.Button("水平123", GUILayout.Height(300));//控件的固定宽高
GUILayout.Button("水平245666656565");
GUILayout.Button("水平235", GUILayout.ExpandWidth(false));//允许或禁止水平拓展
GUILayout.EndHorizontal();//闭合以 BeginHorizontal 开始的组。
GUILayout.EndArea();//闭合以 BeginArea 开始的 GUILayout 块。
GUI.EndGroup();
#endregion
#region 知识点二 GUILayoutOption布局选项
//控件的固定宽高
GUILayout.Width(300);
GUILayout.Height(200);
//允许控件的最小宽高
GUILayout.MinWidth(50);
GUILayout.MinHeight(50);
//允许控件的最大宽高
GUILayout.MaxWidth(100);
GUILayout.MaxHeight(100);
//允许或禁止水平竖直拓展
GUILayout.ExpandWidth(true);//允许
GUILayout.ExpandHeight(false);//禁止
#endregion
}
}
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 785293209@qq.com