我有一个 NaviagtionView,里面有一个 TabView 和 4 个 TabItem。 TabItem 之一应显示搜索栏。我可以使 NavigationView .searchable ,但我只想将其放在要进行搜索的 TabItem 内。我怎样才能做到这一点? 这是我的代码:
var body: some View {
NavigationView {
TabView{
HomeScreen()
.background(Color("BackgroundColor"))
.tabItem{
Image(systemName: "house")
}
PostScreen()
.background(Color("BackgroundColor"))
.tabItem{
Image(systemName: "plus")
}
SearchScreen()
.background(Color("BackgroundColor"))
.tabItem{
Image(systemName: "magnifyingglass")
}
ProfileScreen()
.background(Color("BackgroundColor"))
.tabItem{
Image(systemName: "person")
}
}
.navigationTitle("MyApp")
.navigationBarTitleDisplayMode(.inline)
.searchable(text: $text)
}
}
最佳答案
在 NavigationView 之后可使用单个 subview 进行搜索。所以我的修改是去掉父NavigationView,在单独的View中添加NavigationView。
也检查这个答案
关于ios - 使 NavigationView 可搜索,但仅限 TabView 中的一页,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72618655/