ContextMenu

将功能添加到组件的上右键菜单
相当与给方法添加了编辑器测试的快捷键
注:该方法必须是非静态的。

ContextMenu有三个构造函数


public ContextMenu(string itemName);

itemName:添加在右键菜单中按键的名称

[ContextMenu("打印Transform的position")]
    private void DebugPos()
    {
        Debug.Log(GetComponent<Transform>().position);
    }

这里写图片描述
点击这个按键
这里写图片描述
无论是在编辑模式还是在运行模式下只要点击就会执行DebugPos()方法。


public ContextMenu(string itemName,bool isValidateFunction);

isValidateFunction:这是否是一个验证函数(默认为false)。

public class Test : MonoBehaviour
{
    public int hp=100;

    [ContextMenu("获得HP", true)]
    private bool BoolDie()
    {
        if (hp <= 0)
        {
            return false;
        }
        else
        {
            return true;
        }
    }

    [ContextMenu("获得HP",false)]
    public void GetHp()
    {
        Debug.Log("当前Hp:"+hp);
    }
}

上面的这段代码中”BoolDie”就是“GetHp”的验证方法,只有当”BoolDie”的返回值为true的时候外面的”获得HP”才可以被选中。
当HP=0时:这里写图片描述


public ContextMenu(string itemName,bool isValidateFunction,int priority);

priority:优先级用于覆盖菜单项的排序(默认为1000000)。它将出现在菜单中的前面的数字越小。

这个方法不做雷同介绍了大家可以参考一AddComponentMenu中对order的介绍

猜你喜欢

转载自blog.csdn.net/qq_35443068/article/details/74171061