当前位置:   article > 正文

在Unity项目中使用Attribute_unity 自定义attribute 如何使用

unity 自定义attribute 如何使用

Untiy开发中经常会使用标签属性(Attribute),比如当使用SctripttableObject做序列化的时候,需要在你想序列化的类前加上[Serializable],但是其中一个变量你又不想它比序列化,你可以在其前面加上[NonSerialized],再比如你想使一个在mono脚本中定义的一个private变量也能在Inspector面板上显示,你可以使用[SerializeField],那么这些特殊的属性字段是如何被区分出来并处理想对应的功能呢。

 

1. 概念(Attribute是什么?)

       直接用代码解释

  1. public static Class Test
  2. {
  3. protected virtual void Print()
  4. {
  5. }
  6. }

    上面这段代码中,public与 static 就是Test的属性,对于类Test的一个修饰,同理

   Protected、virtual、void 是对Print方法的修饰。他们每一种修饰都代表着不同的含义,那么如果我们对一个类或者方法(当前也包括定义的字段与枚举,结构体等等)有特殊的修饰需求,我们怎么自字义一个Attribute。

 

2. 自定义Attribute的使用方法

  1. //定义一个修饰类的属性标签
  2. [AttributeUsage(AttributeTargets.Class, AllowMultiple = false, Inherited= true)]
  3. public class CustomClassAttribute : System.Attribute
  4. {
  5. private CustomClassType m
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/煮酒与君饮/article/detail/786401
推荐阅读
相关标签
  

闽ICP备14008679号