美文网首页
Odin Inspector

Odin Inspector

作者: CERI_CHANNEL | 来源:发表于2022-08-01 15:51 被阅读0次

OdinMenuEditorWindow

命名空间: Sirenix.OdinInspector.Editor

public abstract class OdinMenuEditorWindow : OdinEditorWindow, ISerializationCallbackReceiver

绘制带有菜单树的编辑器窗口。

例子:

protected override OdinMenuTree BuildMenuTree()
{
    OdinMenuTree tree = new OdinMenuTree();
    tree.Config.DrawSearchToolbar = true;
    tree.Add("整包构建", new PackageBuilderEditor());
    tree.Add("热更构建", new PatchBuilderEditor());
    return tree;
}

表示有2个页签,整包构建/热更构建,分别是PackageBuilderEditor,PatchBuilderEditor实现各自界面的渲染处理逻辑

OdinEditorWindow

命名空间:Sirenix.OdinInspector.Editor

[ShowOdinSerializedPropertiesInInspector]
public class OdinEditorWindow : EditorWindow, ISerializationCallbackReceiver

使用 Odin 创建编辑器窗口的基类。

例子:

public class SomeWindow : OdinEditorWindow
{
    [MenuItem("My Game/Some Window")]
    private static void OpenWindow()
    {
        GetWindow<SomeWindow>().Show();
    }
}

表示一个窗口,但是里面上面都没有

特性

InfoBox

[InfoBox("参数请认真选择,不要选错!", InfoMessageType.Info)]

类似[Header("xxx")],解释文本

LabelText

[LabelText("平台")]

让原本序列号的变量,用中文描述

EnableIf

[EnableIf("buildPlatform", EBuildPlatform.Windows)]

如果满足params1==params2的条件,则enable状态,否则disabled。DisableIf同理

PropertySpace

[PropertySpace(20)]

Space具有相同的功能

ReadOnly

[ReadOnly]

只读

ShowIf

[ShowIf("tmpPatchArray")]

当满足条件时,显示

OnValueChanged

[OnValueChanged("OnCurPageIndexChanged")]

当数值发生变化时调用params1方法*如果是代码赋值修改则不生效!

Button

[Button("开始构建 (并保存配置)", ButtonSizes.Large, ButtonStyle.Box)]
public void Build() {
    ...
}

会生成一个按钮,点击后运行某方法

ButtonGroup

[ButtonGroup]

让多个Button一排展示

FilePath

[FilePath(ParentFolder = "Assets", Extensions = "txt")]
public string localPatchFile;

这个string类型的变量是由手动选择Assets目录下的txt文件的路径赋值

Odin Inspector 官网链接 >>

相关文章

网友评论

      本文标题:Odin Inspector

      本文链接:https://www.haomeiwen.com/subject/fsljwrtx.html