在 SwiftUI 中设置简单的下拉菜单样式

问题描述 投票:0回答:1

我正在尝试在 macOS 上的 SwiftUI 中创建一个简单的下拉按钮。通常我会期望使用这样的东西:

MenuButton("☰") {
    Button(action: { print("Something") }) {
        HStack {
            Image(systemName: "questionmark.circle")
            Text("Something")
        }
    }
    Button(action: { print("Something Else") }) {
        HStack {
            Image(systemName: "exclamationmark.circle")
            Text("Something Else")
        }
    }
}
.menuButtonStyle(BorderlessButtonMenuButtonStyle())

.menuButtonStyle(BorderlessButtonMenuButtonStyle())
仅显示菜单图标(☰)

enter image description here

没有下拉

enter image description here

但是,

MenuButton
已被弃用,取而代之的是
Menu
,这很好,但我随后需要用
.menuStyle
修改它,并且找不到
BorderlessButtonMenuButtonStyle

的等效项

Menu
抑制下拉箭头的等效项是什么?

macos swiftui menu
1个回答
0
投票

根据文档(这可能有点不准确,因为

.buttonStyle(.borderless)
确实显示了向下箭头):

无边框按钮 已弃用

menuStyle(_:)
button
一起使用,以及
buttonStyle(_:)
borderless

        Menu("☰") {
                Button(action: { print("Something") }) {
                    HStack {
                        Image(systemName: "questionmark.circle")
                        Text("Something")
                    }
                }
                Button(action: { print("Something Else") }) {
                    HStack {
                        Image(systemName: "exclamationmark.circle")
                        Text("Something Else")
                    }
                }
            }
            .menuStyle(.button)
            .buttonStyle(.plain)
© www.soinside.com 2019 - 2024. All rights reserved.