一、ContextMenu
描述
ContextMenu 属性用于向上下文菜单添加命令。
在该附加脚本的 Inspector 中,当用户选择该上下文菜单时, 将执行此函数。
这对于从该脚本自动设置场景数据非常有用。 此函数必须是非静态的。
注意:ContextMenu这个类创建的选项,都是基于当前它所在的集成自MonoBehaviour的组件类的,不像 MenuItem 几乎是一个全局存在的选项
使用示例
using UnityEngine;
public class Cube : MonoBehaviour
{
[ContextMenu("Do Something")]
void DoSomething()
{
Debug.Log("Perform operation");
}
}
效果如图:
ContextMenuItem使用示例
为某个字段添加右键菜单
[ContextMenuItem("add testName", "ContextMenuFunc2")]
public string testName = "";
private void ContextMenuFunc2()
{
testName = "testName";
}
效果如图:
注意:我们给变量testName加菜单的时候,一定要把[ContextMenuItem]写在testName上,而不是方法private void ContextMenuFunc2()上面,方法的调用靠在ContextMenuItem上设置参数来完成。
二、MenuItem
描述
MenuItem 属性用于向主菜单和检视面板上下文菜单添加菜单项。
该 MenuItem 属性能够将任何静态函数转变为菜单命令。仅静态函数可使用 MenuItem 属性。
注意: