提问人:Ariel Antonio Fundora 提问时间:3/10/2023 最后编辑:Ariel Antonio Fundora 更新时间:3/13/2023 访问量:36
如何在navigationBar上显示未折叠的菜单?
How to display the menu uncollapsed on navigationBar?
问:
我想显示一个具有多个选项的选取器,以选择其中一个选项。我可以做到,但问题是菜单显示折叠。
如何显示菜单显示未折叠?
示例代码:
struct TestingView: View {
enum Options: String, CaseIterable {
case option1
case option2
case option3
}
@State var selectedOrder: Options = .option1
var body: some View {
NavigationStack{
VStack {
Text("Custom Text")
}
.toolbar {
ToolbarItem(placement: .navigationBarTrailing) {
Menu {
Picker("Order by", selection: $selectedOrder) {
ForEach(Options.allCases, id: \.self) {
Text($0.rawValue)
}
}
.pickerStyle(.menu)
} label: {
Image(systemName: "arrow.up.arrow.down")
}
}
}
}
}}
答:
0赞
Asad
12/13/2023
#1
当我们在菜单中使用选择器时,它被呈现为子菜单。您可以使用以下代码。复选标记图像的位置无法更改。
.toolbar {
ToolbarItem(placement: .navigationBarTrailing) {
Menu {
ForEach(Options.allCases, id: \.self) { option in
Button(action: {
selectedOrder = option
}, label: {
if selectedOrder == option {
Image(systemName: "checkmark")
}
Text(option.rawValue)
})
}
} label: {
Image(systemName: "arrow.up.arrow.down")
}
}
}
评论