大家好,我是阿赵。这次来分享一下在Unity引擎里面怎样对编辑器的界面进行扩展。
第一篇先分享一下Unity编辑器怎样自定义窗体。
1、简单的创建一个窗体

using UnityEditor;
using UnityEngine;
public class TestEditorWindow : EditorWindow
{
[MenuItem("Tools/TestWindow")]
private static void ShowTestWindow()
{
GetWindow<TestEditorWindow>("测试窗体");
}
void OnGUI()
{
GUILayout.Label("这是一个测试界面");
}
}


加粗样式注意事项
- 编辑器类脚本一定要放到Editor文件夹里面
这个Editor文件夹不一定在Assets/Editor,只需要父级文件夹是Editor就行,可以放在别的文件里面。 - using UnityEditor;
想使用编辑器的API,必须要引用UnityEditor。 - 继承EditorWindow
由于是想显示一个窗体,所以要继承EditorWindow,这样这个类就会有一个窗体的载体和生命周期。 - MenuItem
这是Unity编辑器添加菜单选项的方法。里面的参数是路径,比如刚才的例子
[MenuItem("Tools/TestWindow")]
所以菜单会出现在Unity编辑器的顶部菜单栏,先出现一个Tools的选项,点击进去,会看到二级菜单”TestWindow”。
5. GetWindow
完整的方法名称是EditorWindow.GetWindow(),由于我们这里已经继承了EditorWindow,所以直接用GetWindow也能调用。传入需要获得的窗体的类型,就可以得到一个对应类型的窗体。
如果窗体已经显示了出来,返回的就是当前显示的窗体对象。如果这个窗体没有被创建过,就会创建一个新的对应类型的窗体,并且返回这个窗体的实例对象。
6. OnGUI
需要显示的窗体内容,将会写在OnGUI方法里面。
2、 控制窗体标题和大小
之前通过GetWindow方法,传入了一个标题,其实也可以不传参数,而在后面修改标题,比如这样:
TestEditorWindow win = GetWindow<TestEditorWindow>();
win.titleContent = new GUIContent("测试窗体");
通过titleContent可以指定窗体的标题。
默认的窗体,是没有指定大小的,可以随意的拖动缩放大小。
如果想指定窗体的大小范围,可以:
win.maxSize = new Vector2(600, 600);
win.minSize = new Vector2(

最低0.47元/天 解锁文章
656

被折叠的 条评论
为什么被折叠?



