首页 > 解决方案 > SwiftUI 覆盖在 NavigationView / NavigationBarTitle 之上

问题描述

有没有办法在 NavigationBarTitle / 后退按钮的顶部放置一个叠加层?在此示例中,我希望灰色矩形隐藏 navigationBarTitle 和“返回”按钮。

在此处输入图像描述

import SwiftUI

struct ContentView: View {
    
    var body: some View {
        
        EmptyView()
            .sheet(isPresented: .constant(true)){
                
                NavigationView{
                    NavigationLink(destination: MyView(), label: {Text("Go to view")})
                }
        }
    }
}

struct MyView: View {
    var body: some View{
        VStack{
            
            HStack{
                Spacer()
                Rectangle()
                    .frame(width: 400, height: 100)
                    .foregroundColor(.gray)
                    .offset(y: -100)
                Spacer()
            }
            Spacer()
        }
            .zIndex(100) //doesn't do anything
            .navigationBarTitle("View")
    }
}

标签: swiftswiftui

解决方案


推荐阅读