【问题标题】:Radial Set InteractableToggleCollection and Deselecting径向设置 InteractableToggleCollection 和取消选择
【发布时间】:2023-04-02 19:21:01
【问题描述】:

对 MR 开发还很陌生,所以请耐心等待

我正在尝试使用径向集来更改场景中的状态。

我最初理解它的用途是 OnDeselect() 函数将在未按下的径向集的所有其他子部分上调用。但情况似乎并非如此,因为我添加到 OnDeselect() 的任何函数都没有被执行。

例如: 在一组

  • 径向 A(主动)
  • 径向 B

选择 Radial B 会触发 Radial B 的 onSelected 事件(它会触发)和 Radial A 的 onDeselected 事件(不会触发)

我还尝试在单选按钮可交互脚本上将 Can Deselect 设置为 true,但这只是在运行时被覆盖并设置回 false。

如果我以错误的方式处理此问题,并且有更好的选择来实现我的目标,请告诉我

谢谢:)

【问题讨论】:

  • 您能否确认(视觉上)确实取消了另一个切换?目前它们似乎充当两个独立的切换开关......
  • 是的,它确实在视觉上被取消选择,因此任何时候都只选择了一个径向按钮。

标签: unity3d mrtk


【解决方案1】:

是的,不幸的是,InteractableOnToggleReceiver 在触发“点击”时执行。

使用 InteractableToggleCollection 组件,每个 Interactable 都通过属性“IsToggled”进行自我切换,并且强制禁用“CanDeselect”属性。这是为了确保始终启用一个径向预制件。

我已经在 github 上提交了一个 issue 来跟踪 https://github.com/microsoft/MixedRealityToolkit-Unity/issues/7165

作为一种临时解决方法,您可以通过代码监听 InteractableToggleCollection.OnSelectionEvents 以了解径向更新的时间

【讨论】:

    猜你喜欢
    • 2012-01-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-19
    • 2017-03-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多