Unity 编辑器中如何以只读方式显示字段(变量)
来源:网络收集 点击: 时间:2024-03-28以只读方式显示需要通过C# Attribute实现。首先创建一个脚本Attributes4Editor。

在该文件中,添加如图代码,即一个继承字PropertyAttribute的属性类。

注意,该属性的作用对象是Field,即类中的成员变量,不能是属性。打开PropertyAttribute元数据可以查看这一点。

然后再创建一个名为Editor的文件夹(文件夹位置无所谓),在文件夹下创建一个名为ShowOnlyDrawer的脚本。

在该文件中添加如图所示代码,即继承一个PropertyDrawer并重载其OnGUI函数。
注意,这是一个项目级使用的CustomPropertyDrawer,会影响所有脚本中打上对应Attribute的字段在Unity Editor中的显示。

要使用自己的属性和自定义的PropertyDrawer,可以在一些脚本中给字段添加,如图所示。

添加好之后,在Unity Editor中即立刻可以看到显示为不可更改的Label。

点击Play运行后,可以看到这些Label的内容会随着字段更新而更新。

1、以只读方式显示需要通过C# Attribute实现。首先创建一个脚本Attributes4Editor。2、在该文件中,添加如图代码,即一个继承字PropertyAttribute的属性类。3、注意,该属性的作用对象是Field,即类中的成员变量,不能是属性。打开PropertyAttribute元数据可以查看这一点。4、然后再创建一个名为Editor的文件夹(文件夹位置无所谓),在文件夹下创建一个名为ShowOnlyDrawer的脚本。5、在该文件中添加如图所示代码,即继承一个PropertyDrawer并重载其OnGUI函数。注意,这是一个项目级使用的CustomPropertyDrawer,会影响所有脚本中打上对应Attribute的字段在Unity Editor中的显示。6、要使用自己的属性和自定义的PropertyDrawer,可以在一些脚本中给字段添加,如图所示。7、添加好之后,在Unity Editor中即立刻可以看到显示为不可更改的Label。8、点击Play运行后,可以看到这些Label的内容会随着字段更新而更新。
注意事项如果遇到问题,可以在下面提出疑问。
UNITY版权声明:
1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。
2、本站仅提供信息发布平台,不承担相关法律责任。
3、若侵犯您的版权或隐私,请联系本站管理员删除。
4、文章链接:http://www.1haoku.cn/art_369040.html