swift - 在 SwiftUI 中单击列表项时如何隐藏底部标签栏?
问题描述
我是 SwiftUI 的新手,我尝试构建新项目以快速学习,我有一个 SwiftUI 项目,一切运行良好,当我单击任何列表项时,它会打开其他视图,但底部标签栏仍位于底部。如果我单击任何列表项,我想在其中隐藏底部标签栏。在 SwiftUI 中可以吗?
Dark_MenuApp:
@main
struct DarkMenuApp: App {
@AppStorage("isDarkMode") private var isDarkMode = false
var body: some Scene {
WindowGroup {
TabView {
NavigationView {
DarkMenuView()
}.tabItem {
Image(systemName: "homekit")
Text("home")
}
Text("Liked")
.tabItem {
Image(systemName: "heart")
Text("Liked")
}
Text("Reels")
.tabItem {
Image(systemName: "video")
Text("Reels")
.environment(\.colorScheme, isDarkMode ? .dark : .light)
.preferredColorScheme(isDarkMode ? .dark : .light)
}
Text("Profile")
.tabItem {
Image(systemName: "person")
Text("Profile")
}
}.accentColor(.primary)
}
}
}
黑暗菜单视图:
struct DarkMenuView: View {
@AppStorage("isDarkMode") private var isDarkMode = false
var body: some View {
VStack{
Picker("Mode" , selection: $isDarkMode) {
Text("Light")
.tag(false)
Text("Dark")
.tag(true)
}.pickerStyle(SegmentedPickerStyle())
.padding()
List(0..<5, id: \.self) { num in
NavigationLink(destination: Text("\(num)")) {
Text("\(num)")
}
}
}.navigationTitle("Dark Menu")
}
}
截屏:
解决方案
推荐阅读
- spring-boot - 基于 OAuth2 的登录到 localhost:8080 使用 Google 导致重定向到相同的登录页面
- javascript - 根据鼠标指针放大对象
- amazon-web-services - 使用 Cloudflare 在 AWS Lambda 上部署 SSR Nuxt.js?
- javascript - 正则表达式问题(长字符串)
- r - 在R中将大数据帧写入csv?
- pandas - 如何使用熊猫查找列的最大值并根据条件按顺序排列它们?
- wpf - MVVM 索引绑定
- android - NavController.handleDeepLink() 不工作
- bash - Obexctl:在终端和脚本中提供不同的结果
- c# - EPPlus 显示系统参数异常