Swift/Swift 개발 노트
[SwiftUi] 탭바 안보이게하기
힛해
2024. 3. 12. 13:25
728x90
네비게이션링크로 넘어가도 탭바가 계속 보이는 경우가 있다.
해결방법 : 탭바를 네비게이션뷰로 묶고 탭바 안의 뷰들을 네비게이션뷰로 감싼것을 지워주면 해결된다.
Before 탭바가 안숨겨지는 경우의 코드
struct ContentView: View {
@State private var selectedTab = "홈"
var body: some View {
TabView(selection: $selectedTab) {
HomeView().tabItem {
Label("홈", systemImage: "house")
}
.tag("홈")
BookmarkView()
.tabItem {
Label("북마크", systemImage: "bookmark")
}
.tag("북마크")
}.tint(Color(hex: "93C73D"))
}
}
HomeView
NavigationView{
VStack{
Spacer()
// 상권지도 컴포넌트
NavigationLink (destination: ChooseBorough()) {
...
After 탭바 숨긴 경우
struct ContentView: View {
@State private var selectedTab = "홈"
var body: some View {
NavigationView{
TabView(selection: $selectedTab) {
HomeView().tabItem {
Label("홈", systemImage: "house")
}
.tag("홈")
BookmarkView()
.tabItem {
Label("북마크", systemImage: "bookmark")
}
.tag("북마크")
}.tint(Color(hex: "93C73D"))
} // NavigationView
}
}
HomeView
VStack{
Spacer()
// 상권지도 컴포넌트
NavigationLink (destination: ChooseBorough()) {
...
이렇게 하면 깔끔하게 해결된다!!