Base class to derive custom property attributes for collections from. Use this to create custom attributes for array and list variables in scripts.
カスタム属性は PropertyDrawer クラスと連結して、その属性があるスクリプト変数がインスペクター上でどう表示されるか制御します。
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 : PropertyCollectionAttribute { }
[CustomPropertyDrawer(typeof(GreenCollectionDrawerAttribute))] public class GreenCollectionDrawer : PropertyDrawer { public override VisualElement CreatePropertyGUI(SerializedProperty property) { return new PropertyField(property) { style = { backgroundColor = Color.green } }; } }
関連項目: PropertyDrawer
order | 複数の DecorationDrawer がある場合に描画する順番を指定するフィールド |