您的位置:首页 > 移动开发 > Unity3D

Unity开发-编辑器:属于自己的编辑菜单

2018-02-08 17:08 423 查看
正所谓:人靠衣装,佛靠金装。程序也如此,好的程序给人高潮。  例如下面的例子:



  里面的菜单是系统自带的,但是如何能在里面留下我们的痕迹呢?
1、Editor(编辑器)
usingUnityEngine;
usingSystem.Collections;
usingUnityEditor;   // 引用命名控件

publicclass EditorTest : Editor {  // 继承Editor这个类

[MenuItem("SYTest/测试窗口",false)]
staticvoid STest()
{
Debug.Log("测试窗口");
}
// 快捷键是F1...F2 = F...
[MenuItem("SYTest1/测试窗口1 F2",false)]
staticvoid Test1()
{
Debug.Log("测试窗口1");
}
// 添加快捷键: % = Ctrl, # = Shift, & = Alt
// 如果是a-z,则前面写_a - _z这种带_前缀的
[MenuItem("SYTest2/测试窗口2 %_K",false)]
staticvoid Test2()
{
Debug.Log("测试窗口2");
}
}

  效果图:


1、多级菜单:



  内部实现:
2、不可选菜单



2.Inspector面板  我们添加系统组件的时候,发现面板很好看,而脚本做不到这种效果。  利用GUILayout 绘制UI控件


3.窗口的菜单


  填充更多内容





4.如何为Assets添加额外扩展

总结:  顶部编辑器菜单:引用using UnityEditor; 使用[MenuItem()];  Inspector面板的处理:继承Editor,重写虚方法:OnInspectorGUI(),并调用(父类的此方法)base.OnInspectorGUI()  窗口的面板:继承:EditorWindow, 使用EditorWindow.GetWindow(); 调用窗口的Show()方法。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: