gpt4 book ai didi

ios - 如何在 WatchOS 6 中将 Crown 输入打印到控制台

转载 作者:行者123 更新时间:2023-11-29 05:18:38 26 4
gpt4 key购买 nike

我正在尝试在 Apple Watch 中打印表冠输入,但无法让它工作。

我创建了一个新的 watch 应用(仅适用于 watch )。

我的 HostingController 中有这个:

import WatchKit
import Foundation
import SwiftUI

class HostingController: WKHostingController<ContentView>, WKCrownDelegate {

override func awake(withContext context: Any?) {
super.awake(withContext: context)

print("awake")

crownSequencer.delegate = self
}

override func willActivate() {
super.willActivate()

print("willActivate")

crownSequencer.focus()
}

func crownDidRotate(_ crownSequencer: WKCrownSequencer?, rotationalDelta: Double) {
print("\(rotationalDelta)")
}

override var body: ContentView {
return ContentView()
}
}

在控制台中,“awake”和“willActivate”都出现了。但是当我旋转表冠时,什么也没有出现。

我错过了什么?

最佳答案

当您使用 WKHostingController 时,您将需要使用数字王冠的 swiftUI API。看起来标准(旧)API 只是默默地失败了。

您将需要一个 @State 变量来绑定(bind)表冠,使 ui 元素可聚焦并添加表冠修饰符。

@State var rotationValue = 0.0

var body: some View {
Text("Crown did rotate: \(rotationValue)")
.focusable(true)
.digitalCrownRotation($rotationValue)
}

关于ios - 如何在 WatchOS 6 中将 Crown 输入打印到控制台,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58912309/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com