draw button
//绘制按钮
//判断行数 列数是否发生变化
//如果没有变化 这两个按钮就变为灰色 不响应事件
bool oldEnabled = GUI.enabled;
GUI.enabled = (_newTotalColumns != _myTarget.TotalColumns || _newTotalRows != _myTarget.TotalRows);
//参数: 标签,大小
bool ButtonResize = GUILayout.Button("Resize", GUILayout.Height(2 * EditorGUIUtility.singleLineHeight));
if (ButtonResize)
{
//弹出对话框 询问是否调整
if(EditorUtility.DisplayDialog("关卡生成器","是否确定重置 \n该行为无法撤销","yes","no"))
{
ResizeLevel();
}
}
//重置数据 为默认的列数和行数
bool buttonReset = GUILayout.Button("Reset");//大小默认为一行
if (buttonReset)
{
ResetResizeValues();
}
//回复静态类 为原来的值
GUI.enabled = oldEnabled;
Control loses focus
//让当前控件失去焦点
GUI.FocusControl("");
Horizontal and vertical layout of EditorGUILayout.
//这个方法对之间的GUI 元素 水平分布
EditorGUILayout.BeginHorizontal();
EditorGUILayout.EndHorizontal();
//这个方法对之间的GUI 元素 垂直分布
EditorGUILayout.BeginVertical();
EditorGUILayout.EndVertical();
A function to change the draw size above
private void DrawLevelSizeGUI()
{
//绘制标题 样式为加粗
EditorGUILayout.LabelField("Size", EditorStyles.boldLabel);
//水平布置, box 为GUI样式,添加矩形方框
EditorGUILayout.BeginHorizontal("box");
//垂直布置
EditorGUILayout.BeginVertical();
//绘制行数 列数
_newTotalColumns = EditorGUILayout.IntField("Columns", Mathf.Max(1, _newTotalColumns));
_newTotalRows = EditorGUILayout.IntField("Rows", Mathf.Max(1, _newTotalRows));
EditorGUILayout.EndVertical();
//垂直布置
EditorGUILayout.BeginVertical();
//绘制按钮
//判断行数 列数是否发生变化
//如果没有变化 这两个按钮就变为灰色 不响应事件
bool oldEnabled = GUI.enabled;
GUI.enabled = (_newTotalColumns != _myTarget.TotalColumns || _newTotalRows != _myTarget.TotalRows);
//参数: 标签,大小
bool ButtonResize = GUILayout.Button("Resize", GUILayout.Height(2 * EditorGUIUtility.singleLineHeight));
if (ButtonResize)
{
//弹出对话框 询问是否调整
if(EditorUtility.DisplayDialog("关卡生成器","是否确定重置 \n该行为无法撤销","yes","no"))
{
ResizeLevel();
}
}
//重置数据 为默认的列数和行数
bool buttonReset = GUILayout.Button("Reset");//大小默认为一行
if (buttonReset)
{
ResetResizeValues();
}
EditorGUILayout.EndVertical();
EditorGUILayout.EndHorizontal();
//回复静态类 为原来的值
GUI.enabled = oldEnabled;
}
You can see that the Inspector viewer becomes as shown below