Swiftui 在选择器内容中显示后退按钮
我有一个隐藏导航栏的视图,但当用户从选择器中选择一个值时,我需要显示带有后退按钮的导航栏 当我添加一个前导按钮时,我的代码将所有国家/地区文本显示为一个项目,而不是将每个文本放在单独的可选行中 你知道如何解决这个问题吗Swiftui 在选择器内容中显示后退按钮,swiftui,Swiftui,我有一个隐藏导航栏的视图,但当用户从选择器中选择一个值时,我需要显示带有后退按钮的导航栏 当我添加一个前导按钮时,我的代码将所有国家/地区文本显示为一个项目,而不是将每个文本放在单独的可选行中 你知道如何解决这个问题吗 VStack{ Form { Picker(selection: $selectedCountry, label: HStack { Text("Country") }) {
VStack{
Form {
Picker(selection: $selectedCountry, label: HStack {
Text("Country")
}) {
ForEach(0 ..< countries.count) {
Text(self.countries[$0])
}
.navigationBarItems(leading: BackButton())
.navigationBarBackButtonHidden(true)
.navigationBarHidden(false)
}
.navigationBarHidden(true)
.navigationBarBackButtonHidden(false)
}
}.navigationBarTitle("")
.navigationBarHidden(true)
VStack{
形式{
选择器(选择:$selectedCountry,标签:hs标记){
案文(“国家”)
}) {
ForEach(0..<国家/地区计数){
文本(自主权国家[$0])
}
.navigationBarItems(前导:BackButton())
.navigationBarBackButtonHidden(真)
.navigationBarHidden(false)
}
.navigationBarHidden(真)
.navigationBarBackButtonHidden(错误)
}
}.navigationBarTitle(“”)
.navigationBarHidden(真)
将修改器应用于动态容器,即ForEach,将其转换为一个视图,因此picker只显示一个组合视图 这里有一个可能的解决方案-只将所需的修改器附加到选择器的第一项(使用Xcode 12/iOS 14测试)
表单{
选择器(选择:$selectedCountry,标签:hs标记){
案文(“国家”)
}) {
ForEach(0..<国家/地区计数){
如果0==$0{
文本(自主权国家[$0])
.navigationBarItems(前导:BackButton())
.navigationBarBackButtonHidden(真)
.navigationBarHidden(false)
}否则{
文本(自主权国家[$0])
}
}
}
.navigationBarHidden(真)
.navigationBarBackButtonHidden(错误)
}
Form {
Picker(selection: $selectedCountry, label: HStack {
Text("Country")
}) {
ForEach(0 ..< countries.count) {
if 0 == $0 {
Text(self.countries[$0])
.navigationBarItems(leading: BackButton())
.navigationBarBackButtonHidden(true)
.navigationBarHidden(false)
} else {
Text(self.countries[$0])
}
}
}
.navigationBarHidden(true)
.navigationBarBackButtonHidden(false)
}