在表格中,隐藏标签 HideInTables

只有A和B,Hidden被隐藏了

脚本相关的显隐

加上标签,默认是没这个标签的

因为加了标签,所以没显示脚本

默认是显示的

自定义类型的隐藏HideReferenceObjectPicker

加了标签的,隐藏对应的类属性

继承自Unity.Object的属性显示InlineEditor

其中的调用

多行文本的输入和显示

方形,选择框,可以选择预览体; 还有调用,直接打开odin编辑器的OpenInEditor接口

场景相关的,或者资产相关的选择,筛选

Toggle选择器标签,其中Enabled可以在实例化的时候使用,也可以在类定义上,直接使用

toggle默认是右边的,加了ToggleLeft也可以放置在,左边

Button按钮相关,有各种样式,按钮点击触发逻辑

枚举EnumPaging,和对应可以,触发函数OnValueChanged

根据逻辑,这里的枚举,会切换unity本身的操作模式

枚举后面,可以加按钮EnumToggleButtons 这是定义的枚举结构体

声明调用逻辑

在属性后面,添加按钮InlineButton

BoxGroup组,centerLabel指的是,label文本显示置中,也支持$的字符串,赋值语法,包含各种控件内容

组的下级子控件,是用 / 进行划分

标题组TitleGroup 主副标题,相关逻辑

组的属性折叠FoldoutGroup

水平方向 组的创建 HorizontalGroup

相对应的,垂直组VerticalGroup

页签组TabGroup,用来切换不同的页签组合

Toggle组ToggleGroup相关逻辑,当然也是支持List结构

按钮组相关ButtonGroup

窗体位置,自适应组ResponsiveButtonGroup

可以用于,比较复杂的组合表现

窗口化的时候,也自适应修改大小了

右键菜单,显示对应的,自定义函数功能CustomContextMenu

禁用右键菜单相关DisableContextMenu

右键可以点出菜单的,就是没有被完全禁用的

控件的,两种绘制形式,其中DrawWithUnity标签,指的是,按照unity的形式绘制

标签Indent可以自定义设置,ui缩进

标签InfoBox是可以设置,提示信息,同时还可以设定布尔传参visibleIfMemberName,控制字段是否显示

这个提示,只有在编辑器模式下,才会显示

当然,也可以显示时间相关

运行时,InfoBox提示消失

标签InlineProperty,控制组件的表现和间距相关

LabelText,自定义属性前面的名称

LabelWidth,修改属性标签宽度

OnInspectorGUI 调用函数,创建自定义检查器GUI

这里的逻辑,是监听到变动,就调用DrawPreview函数,创建一个自定义检查器GUI,表现

1
2
3
        GUILayout.BeginVertical(GUI.skin.box);
        GUILayout.Label(this.Texture);
        GUILayout.EndVertical();

PropertyTooltip标签,是鼠标悬停的时候,会出现提示文本内容

SuffixLabel标签,是可以在组件后面,新增自定义提示,配合Overlay属性,观感上,会显示得更加简洁