🦋
SwiftUI: カスタムViewModifierでcontentはモーダルの中では表示されない
struct ModalModifier<L: View>: ViewModifier {
@State var isPresented: Bool = false
let label: () -> L
func body(content: Content) -> some View {
Button {
isPresented = true
} label: {
label()
}
// 例1
.sheet(isPresented: $isPresented) {
content
}
// 例2
.fullScreenCover(isPresented: $isPresented) {
content
}
}
}
この様なカスタムViewModifier
を作って使ってみてもcontent
は表示されないことがわかりました。
struct ContentView: View {
var body: some View {
VStack {
Text("Hello")
.modifier(ModalModifier(label: {
Label("Go", systemImage: "car")
}))
}
.padding()
}
}
例1のパターン
Discussion