swift - watchOS 自动对焦上的 SwiftUI Picker
问题描述
我正在使用 SwiftUI(部署目标 - watchOS 6.0)构建 watchOS 应用程序。我对 Picker 的注意力有些问题。当我使用数字表冠从下到上滚动屏幕时,它会自动聚焦,这会导致在屏幕滚动停止后(达到最大顶部位置),表冠开始自动操纵 Picker 的值,我想避免这种情况。
这是预期的行为吗?有什么解决方法,如何禁用这种自动对焦?由于部署目标需要为 watchOS6,因此目前还没有可用的焦点 API。
我附上了代码片段来向你展示我是如何使用那个特定的 Picker 的。
var body: some View {
List {
Section(header: Text("Zones")) {
VStack(alignment: .leading) {
Text("Max BPM")
Picker("Max BPM", selection: $settingsViewModel.maxBpm) {
ForEach(SettingsViewModel.kMinimumBpm..<SettingsViewModel.kMaximumBpm + 1) { bpm in
Text(String(bpm)).tag(bpm)
}
}
.frame(height: 25)
.labelsHidden()
.pickerStyle(WheelPickerStyle())
}
}
// Other views
}
}
解决方案
推荐阅读
- java - 如何在 Java Android 中查找对象的大小
- c# - 如何在 EF 6 中使用原始 sql 查询循环遍历行?
- c# - 如何从 Controller 方法获取字符串值到 View 脚本标签变量?
- c# - 带 ExecuteSqlCommandAsync 的输出参数
- spring-boot - 如何从对话流聊天机器人调用 API
- javascript - 在“重新加载站点?”上单击“取消” 在 chrome 中刷新页面
- git - “HEAD detached from”:如何回到主模块并应用提交给子模块的更改?
- python - 如何将多轨迹图制作为可重用代码?
- php - Laravel SESSION 过期 419 并自动重定向
- python - 将python变量传递给tcl