1、GUIStyle
定义原GUI系统中的布局和观感样式,此类内容定义为 GUIStyle
此类样式可通过 GUISkin 实现全局应用,或者针对各个控件独立使用
定义如下内容:
#名称
#针对绑定控件不同状态的纹理或文本的颜色值(包括Normal、Hover、Active 以及 Focused)
#控件的边框、边界值、内边界及上溢尺寸(针对各条边)
#字体(包括适宜尺寸、样式、对齐方式、自动换行以及富文本支持选项)
#文本裁剪尺寸
#控件中的图像位置
#控件内容中的偏移设置
#固定的宽度和高度
#宽度和高度的拉伸选项
可在类中定义public GUIStyle,便于在Editor Inspector中进行调整
using UnityEngine;
[ExecuteInEditMode]
public class GUIStyle : MonoBehaviour
{
public GUIStyle;
void OnGUI()
{
GUI.Label(new Rect(25, 15, 100, 30), "Label", myGUIStyle);
}
}
2、GUISkin
如果用户不希望直接在各个控件上统一使用某一样式,则可有选择性地创建GUISkin,这针对各个控件类型包含了全部样式
GUISkin包含了某些附加选项并可应用于GUI上,包括:
#设置是否选择了双击操作
#设置是否选择了三击操作
#鼠标指针的颜色
#鼠标的闪烁速度
#默认的选取颜色
#自定义样式(表示为GUIStyle属性数组,并于随后可在控件上实现复用)
可单击项目文件夹视图中的Create按钮,这将在项目视图中生成新的GUISkin资源数据
当使用GUISkin时,可创建名为GUISkin的新脚本,并采用下列代码替换其内容
using UnityEngine;
[ExecuteInEditMode]
public class GUISkins : MonoBehaviour{
public GUISkin MySkin;
void OnGUI()
{
GUI.skin=mySkin;
GUI.Label(new Rect(25, 15, 100, 30), "Label");
}
}