#swift #swiftui #focus #picker #watchos
Вопрос:
Я создаю приложение watchOS с помощью SwiftUI (цель развертывания — watchOS 6.0). У меня есть некоторые проблемы с фокусом Сборщика. Он автоматически фокусируется, когда я прокручиваю экран снизу вверх с помощью цифровой заводной головки, что приводит к тому, что сразу после остановки прокрутки экрана (она достигает максимального верхнего положения) заводная головка начинает автоматически манипулировать значением выбора, чего я хочу избежать.
Является ли это ожидаемым поведением? Есть ли какой-либо обходной путь, как отключить такой вид автофокусировки? Поскольку целью развертывания должна быть watchOS6, API focus пока недоступен.
Я прикрепил фрагмент кода, чтобы показать вам, как я использую этот конкретный инструмент выбора, хотя.
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
}
}