Unity Hierarchy 视图图标绘制

复制代码
using UnityEditor;
using UnityEngine;

[InitializeOnLoad]
class UGUIOpenedPanelEditor
{
    static readonly Texture2D TexturePanel;
    static UGUIOpenedPanelEditor()
    {
        TexturePanel =
            AssetDatabase.LoadAssetAtPath("Assets/Editor/UIEditorHelp/open.png", typeof(Texture2D)) as Texture2D;
        EditorApplication.hierarchyWindowItemOnGUI += CurrentOpenUIPanel;
    }

    static void CurrentOpenUIPanel(int instanceID, Rect selectionRect)
    {
        Rect r = new Rect(selectionRect);
        r.x = 0;
        r.width = 20;
        GameObject go = EditorUtility.InstanceIDToObject(instanceID) as GameObject;
        if (go != null)
        {
            //满足条件绘制Icon
            var canvasGroup = go.GetComponent<CanvasGroup>();
            if (canvasGroup != null && canvasGroup.alpha >= 1)
            {
                GUI.Label(r, TexturePanel);
            }
        }
    }
}
复制代码

 

posted @   三页菌  阅读(143)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~
历史上的今天:
2019-07-30 unity编辑器Hierarchy添加图标
点击右上角即可分享
微信分享提示