If I create a Menu in SwiftUI (iOS), I cannot set the color of the Buttons inside, e.g.:
Menu("Actions") {
Button(action: { }) {
Label("Whatever", systemImage: "pencil")
.background(Color.red) // does not work
}
.background(Color.red) // does not work either
.buttonStyle(RedButtonStyle()) // does not work either
}
struct RedButtonStyle: ButtonStyle {
func makeBody(configuration: Configuration) -> some View {
configuration.label.foregroundColor(Color.red)
}
}
If instead of Label
, I use Text
, or Image
(I am aware of this), it doesn't work either.
Is there any way to do it?
P.S.: there is another related SO question, but it is very generic and wider in scope.
Menu
's buttons style, colors etc. in SwiftUI 2.0. You can try to build your own customMenu
. – BagasseUIKit
. Follow that and then wrap it into aUIViewControllerRepresentable
or aUiViewRepresentable
to make it work in SwiftUI. – Dialecticism