Unity Editor GUI 自适应区域框:包裹自定义 Toggle 和 Text
可以使用 EditorGUILayout.BeginVertical 和 EditorGUILayout.EndVertical 来包裹一些自定义的 toggle 和 text,这样可以创建一个自适应的区域框。具体实现方式如下:
using UnityEngine;
using UnityEditor;
public class CustomEditorWindow : EditorWindow
{
private bool toggle1;
private bool toggle2;
private bool toggle3;
[MenuItem("Window/CustomEditorWindow")]
public static void ShowWindow()
{
EditorWindow.GetWindow<CustomEditorWindow>("Custom Editor Window");
}
private void OnGUI()
{
// 开始一个垂直布局组
EditorGUILayout.BeginVertical(GUI.skin.box);
// 绘制一个文本标签
GUILayout.Label("Custom Toggle Group");
// 绘制三个自定义的 toggle
toggle1 = EditorGUILayout.ToggleLeft("Toggle 1", toggle1);
toggle2 = EditorGUILayout.ToggleLeft("Toggle 2", toggle2);
toggle3 = EditorGUILayout.ToggleLeft("Toggle 3", toggle3);
// 结束垂直布局组
EditorGUILayout.EndVertical();
}
}
在这个示例中,我们使用 EditorGUILayout.BeginVertical 和 EditorGUILayout.EndVertical 来创建一个垂直布局组,然后在该组内添加了一些自定义的 toggle 和文本标签。由于使用了垂直布局组,该区域框的位置和大小会根据内部内容进行自适应。
原文地址: https://www.cveoy.top/t/topic/oM3K 著作权归作者所有。请勿转载和采集!