iAl*_*x11 5 tabview swift swiftui ios-navigationview
大家好。我正在开发一个显示一些鸣叫的简单SwiftUI应用程序。它具有一个带两个视图的选项卡视图:将显示推文的主页和一个辅助视图。
问题在于主页上有一个NavigationView
。如果我选择仅显示主页,则一切似乎都正确,但是当我从显示TabView
并向下滚动时,NavigationView感觉有点奇怪。
由于我不擅长解释,因此这里有一些图片:
我想添加.edgesIgnoringSafeArea(.top)
,但是NavigationView现在被该缺口隐藏了,并且没有效果。
有什么办法可以使NavigationView像第一个图像一样显示?
任何帮助表示赞赏。提前致谢。
HomePageView:
struct HomePageView: View {
var body: some View {
NavigationView {
List {
//tweet code
}
.navigationBarTitle("Your feed")
}
}
}
Run Code Online (Sandbox Code Playgroud)
TabView:
struct TabController: View {
@State private var selection = 0
var body: some View {
TabView(selection: $selection){
HomePageView()
.tabItem {
VStack {
Image(systemName: "house.fill")
.font(.title)
}
}
.tag(0)
Text("Second View")
.font(.title)
.tabItem {
VStack {
Image(systemName: "bell.fill")
.font(.title)
}
}
.tag(1)
}
}
}
Run Code Online (Sandbox Code Playgroud)
尝试添加.edgesIgnoringSafeArea(.top)
到标签视图中。
struct ContentView: View {
@State private var selection = 0
var body: some View {
TabView(selection: $selection){
HomePageView()
.tabItem {
VStack {
Image(systemName: "house.fill")
.font(.title)
}
}
.tag(0)
Text("Second View")
.font(.title)
.tabItem {
VStack {
Image(systemName: "bell.fill")
.font(.title)
}
}
.tag(1)
}.edgesIgnoringSafeArea(.top)
}
}
Run Code Online (Sandbox Code Playgroud)