本文共 3079 字,大约阅读时间需要 10 分钟。
ToggleGroup用于任何字段,并创建一组可切换的选项。使用此选项可以创建可以启用或禁用的选项。
注意:此bool 成员不能为static
[ToggleGroup("MyToggle")] public bool MyToggle; [ToggleGroup("MyToggle")] public float A; [ToggleGroup("MyToggle")] [HideLabel, Multiline] public string B;
[ToggleGroup("EnableGroupOne", "$GroupOneTitle")] public bool EnableGroupOne = true; [ToggleGroup("EnableGroupOne")] public string GroupOneTitle = "One"; [ToggleGroup("EnableGroupOne")] public float GroupOneA; [ToggleGroup("EnableGroupOne")] public float GroupOneB;
[Toggle("Enabled")] public MyToggleObject Three = new MyToggleObject(); [Toggle("Enabled")] public MyToggleA Four = new MyToggleA(); [Toggle("Enabled")] public MyToggleB Five = new MyToggleB(); [Serializable] public class MyToggleObject { public bool Enabled; [HideInInspector] public string Title; public int A; public int B; } [Serializable] public class MyToggleA : MyToggleObject { public float C; public float D; public float F; } [Serializable] public class MyToggleB : MyToggleObject { public string Text; }
using Sirenix.OdinInspector;using System;using UnityEngine;public class ToggleGroupAttributeExample : MonoBehaviour{ [ToggleGroup("MyToggle")] public bool MyToggle; [ToggleGroup("MyToggle")] public float A; [ToggleGroup("MyToggle")] [HideLabel, Multiline] public string B; // Toggle for custom data. [ToggleGroup("EnableGroupOne", "$GroupOneTitle")] public bool EnableGroupOne = true; [ToggleGroup("EnableGroupOne")] public string GroupOneTitle = "One"; [ToggleGroup("EnableGroupOne")] public float GroupOneA; [ToggleGroup("EnableGroupOne")] public float GroupOneB; // Toggle for individual objects. [Toggle("Enabled")] public MyToggleObject Three = new MyToggleObject(); [Toggle("Enabled")] public MyToggleA Four = new MyToggleA(); [Toggle("Enabled")] public MyToggleB Five = new MyToggleB(); public MyToggleC[] ToggleList = new MyToggleC[] { new MyToggleC(){ Test = 2f, Enabled = true, }, new MyToggleC(){ Test = 5f, }, new MyToggleC(){ Test = 7f, }, }; [Serializable] public class MyToggleObject { public bool Enabled; [HideInInspector] public string Title; public int A; public int B; } [Serializable] public class MyToggleA : MyToggleObject { public float C; public float D; public float F; } [Serializable] public class MyToggleB : MyToggleObject { public string Text; } [Serializable] public class MyToggleC { [ToggleGroup("Enabled", "$Label")] public bool Enabled; public string Label { get { return this.Test.ToString(); } } [ToggleGroup("Enabled")] public float Test; }}
转载地址:http://aijti.baihongyu.com/