【发布时间】:2019-12-19 22:14:30
【问题描述】:
有一个讨厌的 SwiftUI 错误,如果将 TextField 放在 List 内的 HStack 中,TextField 就会消失
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中,有或没有布局约束
还有什么我可以尝试的吗?
【问题讨论】:
-
您使用哪个 Xcode 版本?用于统计目的。
-
这发生在 Xcode 11.2 和 11.3 上,无论是在设备上还是在模拟器上。
-
今天刚打这个。令人抓狂!很高兴找到您的帖子。
标签: swift uitextfield uikit swiftui textfield