使用 SwiftUI 和 a 时出现渲染Picker
问题Form
有一个错误,即Picker
在点击时该行保持选中状态。一种解决方法是为其分配一个每次Form
出现时都会更改的 id。但是,这会导致另一个错误。顶部分隔符消失。
这是重现它的代码:
struct RegisterUserView: View {
@State private var email: String = ""
@State private var listViewId = UUID()
@State var selectedCountry: String = ""
var body: some View {
Form {
Section(header: Text("account_info")) {
TextField("email_address", text: $email)
Picker("country", selection: $selectedCountry) {
Text("HAHA")
Text("HOHO")
}.id(listViewId)
.onAppear {
listViewId = UUID()
}
}
}
}
这是结果: