Unity 编辑器中如何显示脚本组件的属性
本经验介绍在Unity 编辑器中,如何显示脚本组件的属性。本经验所提的显示脚本组件的属性需要创建新的Editor对象,这也意味着这种方式只能对一个脚本及其子类起作用。

2、具体做法,首先创建一个脚本用于编写自定义Attribute,并添加如图所示Attribute。

4、在ExposeProperties.cs中,按照Wiki文档创建代码即可。

6、然后就可以使用实现好的属性和配套Editor类。在脚本中(我的是MQTTDevice)中对一些public且可读可写的property添加[ExposeProperty]。

8、但是,如果我们设置这些属性值,再运行,会发现属性值消失。这是因为属性的序列化和运行时读写不是一回事,属性不是字段,Unity中默认未序列化/未保存。

2、对于这种情况,我们需要修改ExposeProperties代码,第一处修改是修改其生成EditorGUILayout的过程,仅生成一个LabelField简单的显示属性的字符串形式即可。

4、回到unity editor,可以看到可读的公共属性以标签的形式显示了出来。
