# UIToggle、UIToggleGroup 组件

# 概述

UIToggle 是一个单选按钮,用于进行简单的状态切换,需配合TouchInputComponent使用。

UIToggleGroup 是一个UIToggle管理器,用于在组内任意子UIToggle发生状态变化时,调整其他UIToggle状态。

UIToggle.gif

# 静态属性描述

ToggleState: UIToggle的状态枚举值

enum ToggleState {
  UnChecked,
  Checked,
}

# UIToggle 属性描述

属性名 类型 默认值 说明
allowSwitchOff boolean true 是否允许取消激活态。
isChecked boolean false 是否处于激活态。
target Renderable2D undefined UIToggle激活态影响的渲染组件
toggleGroup UIToggleGroup undefined UIToggle关联的UIToggleGroup
index number -1 位于ToggleGroup的index,若无对应ToggleGroup则为-1

# UIToggle 方法描述

方法 参数 返回值 功能
getState <ToggleState> 返回当前UIToggle状态
setState <ToggleState> Void 设置UIToggle状态,会影响isChecked

# UIToggleGroup 属性描述

属性名 类型 默认值 说明
allowSwitchOff boolean false UIToggleGroup下属的UIToggle是否允许取消激活态。
toggleList Array<UIToggle> [] 只读属性,UIToggleGroup控制的UIToggle数组。
deafaultActiveToggle UIToggle undefined UIToggleGroup中默认处于激活态的UIToggle。

# UIToggleGroup 方法描述

方法 参数 返回值 功能
getActiveToggle <UIToggle / null> 返回当前ToggleGroup激活状态的Toggle
setIndex <index: number> <boolean> 根据index,激活ToggleGroup里面Toggle,返回是否成功激活
checkedChange <toggle: UIToggle> Void 取消激活ToggleGroup中除toggle外的其他Toggle
addToggle <toggle: UIToggle> Void 往当前UIToggleGroup添加UIToggle
removeToggle <toggle: UIToggle> Void 往当前UIToggleGroup删除UIToggle

# 注意

  1. UIToggle若无指定Target,会默认取Toggle所在节点的第一个存在渲染组件的子节点,作为状态切换的目标,默认状态为显示。
  2. onTouchEnter时会将当前组件的isChecked设为true。
  3. UIToggle状态变化,会触发当前节点所有组件的onStateChange(isChecked: Booleen, state: ToggleState)
点击咨询小助手