输入
⚠️ 警告:此功能已弃用,仅支持旧版运行时,不支持当前运行时。请改用数据绑定来控制 Rive 动画。
概览
输入(Inputs)是已弃用的功能,用于控制状态机动画。输入可以是数字、布尔值或触发器类型,用于在运行时驱动状态机转换。
控制输入
输入
为状态机设置输入值通过 View 类中实例化的 RiveViewModel 进行。
.setInput()
inputName(String) - 状态机上要设置值的输入名称value(Bool, Float, 或 Double) - 为关联的inputName设置的值
triggerInput()
inputName(String) - 状态机上要触发的输入名称
// 数字输入示例
starsVM.setInput("Rating Changed", value: 5)
// 布尔输入示例
toggleVM.setInput("Switch Flipped", value: true)
// 触发器输入示例
confettiVM.triggerInput("Celebrate")
嵌套输入
嵌套输入是指位于嵌套画板或组件内的输入。要访问它们,你需 要使用路径来定位输入。
设置上述示例的 Volume 输入:
@StateObject private var riveState = RiveViewModel(fileName: "file_name", stateMachineName: "StateMachineName")
...
riveState.setInput("volume", value: 80.0, path: "Volume Molecule/Volume Component")
所有选项:
setInput(_ inputName, value: value, path)其中value可以是Bool、Double或FloattriggerInput(_ inputName, path: path)