1.9 KiB
1.9 KiB
UIExtension UXController 数据驱动绑定模块手册
模块概述
UXController 与 UXBinding 组成 UI 状态驱动绑定系统,用于把控制器状态映射到 UI 属性值。
适用场景
- 页签状态切换。
- UI 主题或皮肤切换。
- 可见性、文本、颜色、尺寸等属性联动。
可调用 API
类型:UXController
源码:Packages/com.alicizax.unity.ui.extension/Runtime/UXComponent/Controller/UXController.cs
- 属性:
Controllers、Bindings、ControllerCount ControllerDefinition属性:Id、Name、Length、Description、SelectedIndex- 方法:
TryGetControllerById(...)、TryGetControllerByName(...)、GetControllerByName(...)、GetControllerAt(...)、GetControllerIndex(...)、SetControllerIndex(...)、SetControllerIndexByName(...)、ResetAllControllers()
类型:UXBinding
源码:Packages/com.alicizax.unity.ui.extension/Runtime/UXComponent/Controller/UXBinding.cs
- 属性:
Controller、Entries - 方法:
Initialize()、SetController(...)、CaptureDefaults()、ResetToDefaults()、PreviewEntry(...)、CaptureEntryValue(...)、CaptureEntryFallbackValue(...) BindingEntry属性:ControllerId、ControllerIndex、Property、Value、FallbackMode、FallbackValue、HasCapturedDefault
类型:UXBindingValue
BoolValueFloatValueStringValueColorValueVector2ValueVector3ValueObjectValueCopyFrom(UXBindingValue other)
工具类:UXBindingPropertyUtility
源码:Packages/com.alicizax.unity.ui.extension/Runtime/UXComponent/Controller/UXBindingPropertyUtility.cs
AllMetadataGetMetadata(...)IsSupported(...)GetSupportedProperties(...)CaptureValue(...)ApplyValue(...)
枚举
UXBindingFallbackModeUXBindingValueKindUXBindingProperty
快速上手
controller.SetControllerIndex("TabState", 1);