AppleWatch:Digital Crown触觉反馈

时间:2019-04-22 08:26:14

标签: ios swift watch-os watch-os-5

我正在构建WathcOS应用程序。 有一个仅带有标签的简单视图。 当用户滚动Digital Crown时,我想更改标签文本。

在我的WKInterfaceController中,我做了

crownSequencer.delegate = self
crownSequencer.focus()

func crownDidRotate(_ crownSequencer: WKCrownSequencer?, rotationalDelta: Double) {
    crownAccumulator += rotationalDelta
    var crowAccumulatorDelta = 0.05
    if let speed = crownSequencer?.rotationsPerSecond {
        crowAccumulatorDelta = speed < 0.5 ? 0.05 : 0.01
    }

    if crownAccumulator > crowAccumulatorDelta {
        crownAccumulator = 0.0
        updateDistanceValue(distance + 0.1)
    } else if crownAccumulator < -crowAccumulatorDelta {
        crownAccumulator = 0.0
        updateDistanceValue(distance - 0.1)
    }
}

问题是我听不到Native Digital Crown Haptic反馈,就像在“观看主屏幕”或任何其他应用上滚动时一样。 我可以手动添加触觉反馈,例如:WKInterfaceDevice.current().play(.click) 但这与Scroll触觉不同。 如何打开滚动触觉?为什么它不起作用?

P.S。在“手表设置”中,“触摸屏”已启用。

1 个答案:

答案 0 :(得分:0)

如果有人遇到相同的问题: 无需在代码中做任何事情。默认情况下它起作用。 要使其正常工作,“手表”设置上的音量不应太小。