版本: Unity 6 (6000.0)
语言英语
  • C#

PropertyAttribute.applyToCollection

建议更改

成功!

感谢您帮助我们改进 Unity 文档的质量。虽然我们无法接受所有提交内容,但我们会阅读用户提出的每项更改建议,并在适当情况下进行更新。

关闭

提交失败

由于某种原因,您的更改建议无法提交。请在几分钟后重试。感谢您抽出时间帮助我们改进 Unity 文档的质量。

关闭

取消

public bool applyToCollection;

描述

使属性影响集合而不是其项目。

using UnityEditor;
using UnityEditor.UIElements;
using UnityEngine;
using UnityEngine.UIElements;

public class Collection : MonoBehaviour { public int before; [GreenCollectionDrawer] public int[] collection; public int after; }

public class GreenCollectionDrawerAttribute : PropertyAttribute { public GreenCollectionDrawerAttribute() : base(true) { } }

[CustomPropertyDrawer(typeof(GreenCollectionDrawerAttribute))] public class GreenCollectionDrawer : PropertyDrawer { public override VisualElement CreatePropertyGUI(SerializedProperty property) { return new PropertyField(property) { style = { backgroundColor = Color.green } }; } }