如何用SwiftUI添加矩形后覆盖ToolBarItem?

问题描述 投票:0回答:1
struct ContentView: View {
    var body: some View {
        NavigationView {
            ZStack {
                Text("content")
                    .toolbar {
                        ToolbarItem(placement: .topBarTrailing) {
                            Button {} label: {
                                Text("item")
                            }
                        }
                    }
                    .buttonStyle(PlainButtonStyle())

                Rectangle()
                    .fill(Color.red)
                    .frame(width: 400, height: 800)
                    .ignoresSafeArea()
                    .onTapGesture {
                        // push to another view
                    }
            }
        }
    }
}

img

我想在点击按钮后添加一个矩形,但该矩形仍在toolbarItem下,如何解决?我只想让矩形覆盖其他所有内容。

我不知道该怎么做

swiftui
1个回答
0
投票

如果您想要

Rectangle
覆盖工具栏或导航栏,请将
overlay
添加到
NavigationView
,如下所示。顺便说一句,
NavigationView
已弃用,请使用
NavigationStack
代替。

NavigationStack {
    ....
}
.overlay {
    Rectangle()
        .fill(Color.red)
        .frame(width: 400, height: 800)
        .ignoresSafeArea()
        .onTapGesture {
            // push to another view
        }
}

© www.soinside.com 2019 - 2024. All rights reserved.