【发布时间】:2019-08-22 20:09:48
【问题描述】:
我正在寻找一种使 NavigationBar 透明的方法。我的 NavigationView 位于 ContentView 的根视图中,其中包含一个 TabView。
import SwiftUI
struct ContentView: View {
var body: some View {
TabView {
HomeView().tabItem {
Image(systemName: "house.fill")
Text("Home")
}.tag(1)
NavigationView {
SearchView()
}
.tabItem {
Image(systemName: "magnifyingglass")
Text("Search")
}.tag(2)
}
即使在根视图中添加以下修饰符后,导航视图栏也会显示。
init() {
UINavigationBar.appearance().backgroundColor = .clear
UINavigationBar.appearance().isHidden = false
}
下面是我试图隐藏导航栏背景的子视图。
import SwiftUI
struct FacilityView: View {
var perks = "Badge_NoPerks"
var image = "Image_Course6"
var courseName = "Course"
var body: some View {
VStack {
HStack {
Image(image)
.resizable()
.aspectRatio(contentMode: .fill)
.frame(width: UIScreen.main.bounds.width, height: 260)
}
VStack(alignment: .leading) {
HStack {
Image(perks)
}
HStack {
Text(courseName)
Spacer()
}
}
.padding(.horizontal)
Spacer()
}.padding(.horizontal)
.edgesIgnoringSafeArea(.top)
.navigationBarTitle("Facility Details")
}
}
【问题讨论】:
-
您是否要使 整个 栏透明、前景和所有内容? (我问是因为您尝试了
isHidden修饰符。) -
只是背景。我需要保留某人点击“返回”的能力
-
噢。这个问题可能有帮助,但我不确定:stackoverflow.com/questions/57508983/…