美文网首页插件推荐
Unity插件之Odin 2.Inspector使用-Group

Unity插件之Odin 2.Inspector使用-Group

作者: 7b6b65902836 | 来源:发表于2019-03-27 02:00 被阅读82次

    Unity插件之Odin 2.Inspector使用-GroupAndLayout

    简介

    Odin定义了很多的属性标签,通过这些属性标签很大程度上增强了编辑器功能,本文将详细介绍如下属性标签:

    • TableList
    • TabGroup
    • HorizontalGroup
    • VerticalGroup
    • FoldoutGroup
    • BoxGroup
    • ToggleGroup
    • InlineProperty
    • TitleGroup

    声明

    本文中的内容属于个人总结整理而来,个人水平有限,对于部分细节难免有理解错误及遗漏之处,如果您在阅读过程中有所发现,希望您能指正,同时文章中的部分内容也参考了其它大神的文章,如果文章中的内容侵犯了您的权益,表示非常歉意,请您指出,我将尽快修改。

    如果您进行转载,请标明出处。

    Unity插件之Odin 2.Inspector使用-GroupAndLayout(http://www.liyubin.com/articles/2019/03/26/1553609543968.html)

    API详解



    TableListAttribute

    简介

    对List和Array使用TableList属性标签,可以在面板中以表的形式进行绘制

    API详解

    • Fields

      类 型 名 称 说 明
      int NumberOfItemsPerPage 设置一页中元素的数量。如果ShowPaging属性为True,设置此值将会覆盖Odin系统设置中的值
      bool IsReadOnly 设置table为只读,为True时会屏蔽掉所有编辑功能,比如添加、删除等,但是对于内部的元素还是可以修改其值的,与ReadOnlyAttribute有一定的不同
      int DefaultMinColumnWidth 设置一列的宽度,默认值为40.使用TableColumnWidthAttributes可以覆盖此值
      bool ShowIndexLabels 设置是否显示元素在列表或者数组中的下标位置
      bool DrawScrollView 设置是否绘制ScrollView
      int MinScrollViewHeight 设置出现滚动窗口时最小设置值,默认是350
      int MaxScrollViewHeight 设置出现滚动窗口最大设置值,默认是0
      bool AlwaysExpanded 设置是否展开
      bool HideToolbar 设置是否隐藏工具条,工具条上有添加、翻页等功能
      int CellPadding 设置间隔,默认是2
    • Properties

      Get/Set 类 型 名 称 描 述
      Get&Set bool ShowPaging 设置是否使用翻页功能,可以在Odin系统设置中设置此值
      Get bool ShowPagingHasValue 获取ShowPaging是否有设置过值
      Get&Set TextAlignment ScrollViewHeight 设置MinScrollViewHeight与MaxScrollViewHeight
    • Constructors

    示例

    Odin-TableListAttribute


    TabGroupAttribute

    简介

    TabGroup属性标签继承自PropertyGroupAttribute,实现ISubGroupProviderAttribute接口,可以将不同的属性组织到不同的标签页中,从而能够更好显示

    能过设置group组的名称,可以使用多个标签页,甚至可以嵌套使用。

    API详解

    • Fields

      类 型 名 称 说 明
      string TabName 设置标签页的名称,相同的名称将会确定为在相同的标签中显示
      bool UseFixedHeight 设置所有的标签页是否使用相同的高度
      bool Paddingless
    • Properties

      Get/Set 类 型 名 称 描 述
      Get&Set List<string> Tabs 所有标签页的名称
    • Constructors

      参 数 描 述
      string tab, bool useFixedHeight = false, int order = 0 将使用默认的group组名称,新建标签页
      string group, string tab, bool useFixedHeight = false, int order = 0 使用指定的group组名称创建标签页,对于同时显示多组标签页或者嵌套使用时,需要指定分组

    示例

    Odin-TabGroupAttribute


    HorizontalGroupAttribute

    简介

    此属性标签继承自PropertyGroupAttribute,使用此属性标签后,可以将多个属性以水平排列的方式进行绘制,宽度值、左右边距等可以按百分比或者像素值进行设定,如果值0-1之间的值,则表示百分比,设置为0时表示自动设置宽度,否则将使用像素进行绘制。

    可以通过指定不同的分组名称从而可以同时使用多组,也可以进行嵌套

    API详解

    • Fields

      类 型 名 称 说 明
      float Width 设置宽度
      float MarginLeft 设置左边距
      float MarginRight 设置右边距
      float PaddingLeft 设置左侧空余
      float PaddingRight 设置右侧空余
      float MinWidth 设置最小宽度
      float MaxWidth 设置最大宽度
      string Title 设置标题,此标签将在水平布局器上方显示
      float LabelWidth 设置文本宽度,0表示自动设定
    • Properties

    • Constructors

      参 数 描 述
      string group, float width = 0, int marginLeft = 0, int marginRight = 0, int order = 0 各个参数的含义参见Fields中说明
      float width = 0, int marginLeft = 0, int marginRight = 0, int order = 0 各个参数的含义参见Fields中说明

    示例

    Odin-HorizontalGroupAttribute


    VerticalGroupAttribute

    简介

    此属性标签继承自PropertyGroupAttribute,使用此属性标签后,可以将指定的属性或者其它属性标签分配好的组进行垂直布局

    API详解

    • Fields

      类 型 名 称 说 明
      float PaddingTop 设置上面空余大小
      float PaddingBottom 设置下面空余大小
    • Properties

    • Constructors

      参 数 描 述
      string groupId, int order = 0 各个参数的含义参见Fields中说明,groupId代表不同的分组名称
      int order = 0 各个参数的含义参见Fields中说明

    示例

    Odin-VerticalGroupAttribute


    FoldoutGroupAttribute

    简介

    此属性标签继承自PropertyGroupAttribute,使用此属性标签后,可通过折叠按钮对其管理的属性进行折叠或展开

    API详解

    • Fields

      类 型 名 称 说 明
      bool Expanded 设置折叠标签的状态
    • Properties

      Get/Set 类 型 名 称 描 述
      Get&Set bool HasDefinedExpanded 判断Expanded是否有赋值
    • Constructors

      参 数 描 述
      string groupName, int order = 0 各个参数的含义参见Fields中说明

    示例

    Odin-FoldoutGroupAttribute


    BoxGroupAttribute

    简介

    此属性标签继承自PropertyGroupAttribute,使用此属性标签后,可以将多个属性通过Box的形式在一起展示

    API详解

    • Fields

      类 型 名 称 说 明
      bool ShowLabel 设置是否显示组的名称
      bool CenterLabel 设置标题文本是否居中显示,否则将会在左侧显示
    • Properties

    • Constructors

      参 数 描 述
      ----
      string group, bool showLabel = true, bool centerLabel = false, int order = 0 各个参数的含义参见Fields中说明

    示例

    Odin-BoxGroupAttribute


    ToggleGroupAttribute

    简介

    此属性标签继承自PropertyGroupAttribute,使用此属性标签后,可以将一组属性统一管理,并且可以启用或者禁用此组属性

    API详解

    • Fields

      类 型 名 称 说 明
      string ToggleGroupTitle 设置组的标题,如果为Null将使用ToggleMemberName的名称替代
      bool CollapseOthersOnExpand 设置同一组中当某个组展开时,是否折叠其它的组
    • Properties

      Get/Set 类 型 名 称 描 述
      Get string ToggleMemberName 返回指定的名称
    • Constructors

      参 数 描 述
      string toggleMemberName, int order = 0, string groupTitle = null toggleMemberName值为属性、字段或者方法的名称,其返回值代表着组是否启用
      string toggleMemberName, string groupTitle toggleMemberName值为属性、字段或者方法的名称,其返回值代表着组是否启用

    示例

    Odin-ToggleGroupAttribute


    InlinePropertyAttribute

    简介

    使用此属性标签后,可以将属性的内容紧接着文本显示,则不再使用折叠标签显示。

    PS:对于子类型,Unity默认会将其按折叠标签的样式显示,使用此标签可以使用文本直接显示

    API详解

    • Fields

      类 型 名 称 说 明
      int LabelWidth 设置文本的宽度
    • Properties

    • Constructors

    示例

    Odin-InlinePropertyAttribute


    TitleGroupAttribute

    简介

    此属性标签继承自PropertyGroupAttribute,使用此属性标签后,可以将多个属性绘制成一组,同时为其添加标题

    API详解

    • Fields

      类 型 名 称 说 明
      string Subtitle 设置子标题内容
      TitleAlignments Alignment 设置标题的对齐方式
      bool HorizontalLine 设置标题下是否添加水平分隔线
      bool BoldTitle 设置标题是否加粗
      bool Indent 设置是否缩进
    • Properties

    • Constructors

      参 数 描 述
      string title, string subtitle = null, TitleAlignments alignment = TitleAlignments.Left, bool horizontalLine = true, bool boldTitle = true, bool indent = false, int order = 0

    示例

    Odin-TitleGroupAttribute


    相关文章

      网友评论

        本文标题:Unity插件之Odin 2.Inspector使用-Group

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