SwiftUI 表单中的选取器在选择一个值后变为灰色
Posted
技术标签:
【中文标题】SwiftUI 表单中的选取器在选择一个值后变为灰色【英文标题】:Picker in SwiftUI Form turns gray after selecting a value 【发布时间】:2020-12-22 08:56:56 【问题描述】:由于某种原因,在我选择一个值后,我的 SwiftUI 表单中的选择器变为灰色。
我的代码:
Form
Section
TextField("title", text: $title)
Picker(selection: $category, label: Text("category"))
ForEach(0..<categories.count) index in
Text(categories[index]).tag(index)
【问题讨论】:
无法使用 Xcode 12.1 / ios 14.1 重现。你用的是哪个环境? Xcode 12.3 / iOS 14.3 也无法重现。 你在真机上测试过吗?我偶尔会在模拟器上看到这个... 是的,我在 iOS 14 下的 iPhone 11 上试了一下,还是遇到了同样的问题 MacOS 中的默认系统行为也出现在菜单中。 ***.com/questions/65771764/…备案FB8974731 【参考方案1】:您需要将表单包装在 NavigationView 中,原因是当您点击选择器时会弹出另一个页面,因此它需要导航视图才能返回导航。
NavigationView
Form
Section
TextField("title", text: $title)
Picker(selection: $category, label: Text("category"))
ForEach(0..<categories.count) index in
Text(categories[index]).tag(index)
【讨论】:
没用。我已经在导航视图中,当我做出选择后返回时,我的选择器仍然是灰色的。以上是关于SwiftUI 表单中的选取器在选择一个值后变为灰色的主要内容,如果未能解决你的问题,请参考以下文章