堆栈隐藏在 SwiftUI 中的标签栏后面
Stack Hides Behind Tab Bar in SwiftUI
我是 SwiftUI 的新手,使用的是 标签栏 。在我的 标签栏 中有 4 个视图,我为每个视图制作了不同的 class。现在我正在为矩形使用 VStack,但这些矩形隐藏在选项卡栏后面。我附上截图:
这是我的代码:
struct ReportIncidentView: View {
var body: some View {
ZStack(alignment: .bottom) {
LinearGradient(gradient: Gradient(colors: [Color(ColorName.gradient1.rawValue), Color(ColorName.appBlue.rawValue)]), startPoint: .top, endPoint: .bottom)
VStack(alignment: .leading) {
Text("Start Questionairre")
.foregroundColor(.white)
.font(.custom(InterFont.semiBold.rawValue, size: 30))
.padding()
VStack(spacing: -1) {
NavigationLink(destination: HitandRunView()
.navigationBarBackButtonHidden(true)
.navigationBarHidden(true)
){
reportIncidentsView(text1: "Car accident", text2: "Report accident here", corners: [.topRight])
}
Rectangle()
.frame(height: 2)
.foregroundColor(Color(ColorName.emailColor.rawValue))
NavigationLink(destination: HitandRunView()
.navigationBarBackButtonHidden(true)
.navigationBarHidden(true)
) {
reportIncidentsView(text1: "Crime incidenct", text2: "Report crime here", corners: [])
}
}
}
}.ignoresSafeArea()
}
}
谁能告诉我必须做什么才能显示在标签栏上?
尽量不要忽略所有安全区域,只忽略最上面的一个:
.ignoresSafeArea(edges: .top)
而不是 .ignoresSafeArea()
你应该只忽略顶部的安全区域,而不是底部的安全区域。如果您忽略所有安全区域,您的内容将与屏幕底部边缘对齐,忽略标签栏。
我是 SwiftUI 的新手,使用的是 标签栏 。在我的 标签栏 中有 4 个视图,我为每个视图制作了不同的 class。现在我正在为矩形使用 VStack,但这些矩形隐藏在选项卡栏后面。我附上截图:
这是我的代码:
struct ReportIncidentView: View {
var body: some View {
ZStack(alignment: .bottom) {
LinearGradient(gradient: Gradient(colors: [Color(ColorName.gradient1.rawValue), Color(ColorName.appBlue.rawValue)]), startPoint: .top, endPoint: .bottom)
VStack(alignment: .leading) {
Text("Start Questionairre")
.foregroundColor(.white)
.font(.custom(InterFont.semiBold.rawValue, size: 30))
.padding()
VStack(spacing: -1) {
NavigationLink(destination: HitandRunView()
.navigationBarBackButtonHidden(true)
.navigationBarHidden(true)
){
reportIncidentsView(text1: "Car accident", text2: "Report accident here", corners: [.topRight])
}
Rectangle()
.frame(height: 2)
.foregroundColor(Color(ColorName.emailColor.rawValue))
NavigationLink(destination: HitandRunView()
.navigationBarBackButtonHidden(true)
.navigationBarHidden(true)
) {
reportIncidentsView(text1: "Crime incidenct", text2: "Report crime here", corners: [])
}
}
}
}.ignoresSafeArea()
}
}
谁能告诉我必须做什么才能显示在标签栏上?
尽量不要忽略所有安全区域,只忽略最上面的一个:
.ignoresSafeArea(edges: .top)
而不是 .ignoresSafeArea()
你应该只忽略顶部的安全区域,而不是底部的安全区域。如果您忽略所有安全区域,您的内容将与屏幕底部边缘对齐,忽略标签栏。