Если пользователь нажимает кнопку во время редактирования TextField (курсор мигает) в DataPtView, приложение вылетает.
В ячейке списка у меня есть кнопка, которая влияет на представление, которое также отображается в ячейка. Вот фрагмент, специально для iPad c.
CellView:
VStack{
Button("TagOut"){
self.tagOut.toggle()
}
if self.tagOut {
TagOutView(question: question)
}
if !self.tagOut{
if question.type == "Y/N"{
YesOrNoView(question: question)
} else if question.type == "DataPt"{
DataPtView(question: question)
} else {
RecordEntryView()
}
...
DataPtView:
...
TextField("Data: ", text: $collectedData)
.onReceive(Just(collectedData)) {value in
let filtered = value.filter {"01234567890-".contains($0)}
if filtered != value{
self.invalidCollectedData = true
} else {
self.invalidCollectedData = false
}
}
...
Я также использую AdaptsToKeyboard ViewModifier, когда CellView является накрыта клавиатурой. move-textfield-up-when-the-keyboard-has-been-in-swiftu
Как мне предотвратить это? Если пользователь прячет клавиатуру перед нажатием кнопки, все в порядке, но это не интуитивно понятно.