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

开发过程中一些快捷操作可以让你减少一些重复操作

接下来说下怎么把Hierarche 窗口组件快速展开和折叠


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

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

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窗口一个物体的组件快速展开和关闭

猜你喜欢

转载自blog.csdn.net/qq_39741605/article/details/80737196