Unity中的特性

特性(Attribute)

特性(Attribute)是用于在运行时传递程序中各种元素(比如类、方法、结构、枚举、组件等)的行为信息的声明性标签。一个声明性标签是通过放置在它所应用的元素前面的方括号([ ])来描述的。
特性( Attribute)是一种允许我们向程序的程序集添加元数据的语言结构.它是用于保存程序结构信息的某种特殊类型的类。

[SerializeField]:在Inspector面板中显示非public属性,并且序列化
[NonSerialized]:在Inspector版面中隐藏public属性,并且序列化
[HideInInspector] :在Inspector版面中隐藏public属性,没有序列化的功能
[AddComponentMenu(“XXX/XX/XXX”)] :让Component菜单下出现你自定义的类,位置是“XXX/XX/XXX”
[ExecuteInEditMode] :在EditMode下也可以执行脚本。Unity中默认情况下,脚本只有在运行的时候才被执行,加上此属性后,不运行程序,也能执行脚本。
[RequireComponent (typeof (ClassName))] :(脚本依赖)把当前类添加到GameObject时会自动添加“CalssName”这个类
[ContextMenu (“XXX”)] :在Inspector版面中,右击包含这条标记的类,在菜单中会出现名为“XXX”的选项,点击选项,会执行被标记的功能(注:此乃标记功能也,非标记类)
[MenuItem (“XXX/XXX”)] :在菜单中出现选项栏,点一下,执行对应功能。注:对应的功能必须是static,同时,使用的时候需要加上using UnityEditor,这个类也要找个Editor文件夹放(一般放“Assets\Editor”)

猜你喜欢

转载自blog.csdn.net/fuliyefly/article/details/79645107