swift - SwiftUI 选择器不显示选项
问题描述
我似乎无法在任何地方找到有关此的任何信息。所以我正在学习 SwiftUI,并且我正在尝试将 a 添加Picker
到 a Form
,但是选择器在点击时不会显示可用选项。我真的不知道还能告诉你们什么,所以有人可以看看并帮助我解决这个问题吗?谢谢 :)
//Outside the body code
@State var contacts: [String] = [""]
@State var types: [Type] = [.mobile]
//Inside the body code and inside a Form{}
Section(header: Text("Contact")){
ForEach(0..<types.count, id: \.self) { i in
HStack{
Picker(selection: $types[i], label: Text(""), content: {
Text("Mobile").tag(Type.mobile)
Text("Land Line").tag(Type.landline)
Text("Email").tag(Type.email)
}).pickerStyle(DefaultPickerStyle())
.frame(width: 80.0)
TextField("Insert Detail", text: $contacts[i])
}
}
Button("Add Another") {
types.append(.mobile)
contacts.append("")
}
解决方案
我最近设法解决了这个问题。
Picker 需要先包装在 NavigationView 中,然后才能在表单中工作。
我能够简单地将 NavigationView 添加到我的视图顶部并将表单放入其中,现在选择器可以完美运行。
var body: some View{
NavigationView{
Form{
....
Picker()
....
}
}
}
推荐阅读
- node.js - Connection Not established in Mocha to MongoDB Atlas
- android - Centrally place menu items in bottom navigation view without text
- python - Python:cx_Oracle 不喜欢我输入日期的方式
- flutter - 从图像加载调色板后极度滞后
- python-3.x - Is there a way to parallelize AES-GCM encryption?
- git - I created a new local repository and can't push to Github because git think my commit doesn't have any files (ls-files show files)
- terraform - Declaring same module twice: duplicate ressources
- excel - Macro Program Very Slow
- php - Codeigniter session values lost on redirect MacOS
- c# - Delay / Freezing OF WPF ui