Unity3D中Hierarche窗口组件和Inspector窗口组件快速展开折叠

发表于2018-06-21
评论0 5.2k浏览
开发过程中使用一些快捷操作可以让你减少一些重复操作,下面和大家介绍下的是Hierarche窗口组件和Inspector窗口组件快速展开折叠的快捷操作方法。

1、Hierarche 窗口组件快速展开和折叠

全选你要折叠的物体,按着Shift键点击开头第一个,然后选择最后一个这样就全部选择要操作的组件。

然后按着 Alt键+小键盘旁边的方向键 Alt键+→快速展开  Alt键+ ←快速折叠

2、inspector窗口组件快速展开折叠

如果遇见一个物体上挂载多个脚本你想要快速展开和折叠 这样就需要借助编辑器扩展Edito完成

新建脚本 InspectorManagerEditor
下面贴出代码:
using UnityEditor;  
using System.Reflection;  
/// <summary>  
/// 描述:全部 展开/收起 Inspector面板的所有组件、  
/// author:  
/// todo 还可以深度定制,添加两个按钮切换  
/// </summary>  
//[CustomEditor(typeof(Transform))]  
public class InspectorManagerEditor : Editor  
{  
    #region ===字段===  
    #endregion  
    #region ===Unity事件=== 快捷键: Ctrl + Shift + M /Ctrl + Shift + Q  实现  
    // 显示两个可以点击的Button   
    [MenuItem("DajiaGame/InspectorManager/全部展开组件... %#&m")]  
    static void Expansion()  
    {  
        var type = typeof(EditorWindow).Assembly.GetType("UnityEditor.InspectorWindow");  
        var window = EditorWindow.GetWindow(type);  
        FieldInfo info = type.GetField("m_Tracker", BindingFlags.NonPublic | BindingFlags.Instance);  
        ActiveEditorTracker tracker = info.GetValue(window) as ActiveEditorTracker;  
        for (int i = 0; i < tracker.activeEditors.Length; i++)  
        {  
            ////可以通过名子单独判断组件展开或不展开  
            //if (tracker.activeEditors[i].target.GetType().Name != "NewBehaviourScript")  
            //{  
            //这里1就是展开,0就是合起来  
            tracker.SetVisible(i, 1);  
            //}  
        }  
    }  
    [MenuItem("DajiaGame/InspectorManager/全部收起组件... %#&n")]  
    static void Shrinkage()  
    {  
        var type = typeof(EditorWindow).Assembly.GetType("UnityEditor.InspectorWindow");  
        var window = EditorWindow.GetWindow(type);  
        FieldInfo info = type.GetField("m_Tracker", BindingFlags.NonPublic | BindingFlags.Instance);  
        ActiveEditorTracker tracker = info.GetValue(window) as ActiveEditorTracker;  
        for (int i = 0; i < tracker.activeEditors.Length; i++)  
        {  
            //这里1就是展开,0就是合起来  
            tracker.SetVisible(i, 0);  
        }  
    }  
    #endregion  
    #region ===方法===  
    #endregion  
}  

新建文件夹Editor把这个脚本放在这个文件夹下

然后通过快捷键或者 选择这里就可以将 inspector窗口一个物体的组件快速展开和关闭

如社区发表内容存在侵权行为,您可以点击这里查看侵权投诉指引