Inspector窗口可编辑的变量

Inspector显示的可编辑内容:
为脚本的成员变量。
私有和保护类参数无法显示编辑。
让私有的和保护的也可以被显示:
加上强制序列化字段特性
[SerializeField]
所谓序列化就是把一个对象保存到一个文件或数据库字段中去
公共的也不让其显示编辑:
在变量前加上特性
[HideInInspector]
大部分类型都能显示编辑:
public int[] array;
public List<int> list;
public E_TestEnum type;
public GameObject gameObj;
字典无论如何都不能被Inspector窗口显示:
public Dictionary<int, string> dic;
让自定义类型可以被访问:
加上序列化特性
[System.Serializable]
一些辅助特性:
分组说明特性Header:为成员分组
[Header("分组说明")]
悬停注释Tooltip:为变量添加说明
[Tooltip("说明内容")]
间隔特性 Space():让两个字段间出现间隔
[Space()]
修饰数值的滑条范围Range:
[Range(最小值, 最大值)]
多行显示字符串:默认不写参数显示3行,写参数就是对应行
[Multiline(4)]
滚动条显示字符串:默认不写参数就是超过3行显示滚动条
[TextArea(3, 4)]
为变量添加快捷方法 ContextMenuItem:
参数1 显示按钮名
参数2 方法名 不能有参数
[ContextMenuItem("显示按钮名", "方法名")]
为方法添加特性能够在Inspector中执行:
[ContextMenu("测试函数")]
注意:
Inspector窗口中的变量关联的就是对象的成员变量,运行时改变他们就是在改变成员变量
拖曳到GameObject对象后 再改变脚本中变量默认值 界面上不会改变
运行中修改的信息不会保存