如何防止 TextField 在 SwiftUI List 中消失?
How to prevent TextField from disappearing in SwiftUI List?
有一个讨厌的 SwiftUI 错误,如果 TextField
放在 List
中的 HStack
中,它就会消失
List {
ForEach(0...200, id: \.self) { index in
HStack {
Text("Text \(index)")
TextField("Test", text: .constant("TextField \(index)"))
}
}
}
https://recordit.co/X12uGct7gD
当 TextField
放在 HStack / VStack / ZStack / .overlay() / .background()
中时会发生这种情况。当 TextField
是 ForEach
的独生子时不会发生。
我已提交错误 (FB7500885),但我正在从社区中寻找解决该问题的想法。到目前为止,这是我尝试过的:
- 在
TextField
上设置显式 .frame()
- 在
TextField
上设置 .fixedSized()
- 使用
UITextField
包装在 UIViewConvertible
中,有或没有布局约束
还有什么我可以尝试的吗?
尝试以下方法:
List {
ForEach(0...200, id: \.self) { index in
HStack {
Text("Text \(index)")
TextField("Test", text: .constant("TextField \(index)")).id(index)
}
}
}
有一个讨厌的 SwiftUI 错误,如果 TextField
放在 List
HStack
中,它就会消失
List {
ForEach(0...200, id: \.self) { index in
HStack {
Text("Text \(index)")
TextField("Test", text: .constant("TextField \(index)"))
}
}
}
https://recordit.co/X12uGct7gD
当 TextField
放在 HStack / VStack / ZStack / .overlay() / .background()
中时会发生这种情况。当 TextField
是 ForEach
的独生子时不会发生。
我已提交错误 (FB7500885),但我正在从社区中寻找解决该问题的想法。到目前为止,这是我尝试过的:
- 在
TextField
上设置显式 - 在
TextField
上设置 - 使用
UITextField
包装在UIViewConvertible
中,有或没有布局约束
.frame()
.fixedSized()
还有什么我可以尝试的吗?
尝试以下方法:
List {
ForEach(0...200, id: \.self) { index in
HStack {
Text("Text \(index)")
TextField("Test", text: .constant("TextField \(index)")).id(index)
}
}
}