[SwiftUI] TabView

RudinP·2025년 8월 8일
0

Study

목록 보기
334/363

TabView 뷰 사용

TabView {
	ViewA()
    ViewB()
    ViewC()
}
  • A,B,C 뷰 세개를 전환할 수 있도록 하는 TabView
  • Tab Item을 추가해야 하단 바에 표시됨

Tab Item

  • 탭 뷰 아래가 아니라 탭 뷰 내의 뷰에 추가해야 함
  • label을 보통 사용
TabView {
	ViewA()
    	.tabItem {
        	Label("Star", systemImage: "star")
        }
    ViewB()
    	.tabItem {
        	...
        }
    ViewC()
    	.tabItem {
        	...
        }
}

선택한 탭 확인 방법(tag)

  • TabView의 selection 파라미터 이용
  • State var 사용
  • tag 추가 후 Index 지정
    • 기본적으로 tabItem의 Index는 없기 때문.
@State private var selectedIndex = 0

var body: some View {
	TabView(selection: $selectedIndex) {
    	ViewA()
        	.tabItem{
            	...
            }
            .tag(0)
        ViewB()
        	.tabItem{
            	...
            }
            .tag(1)
        ViewC()
        	.tabItem{
            	...
            }
            .tag(2)
    }
}

특정 탭으로 바로 이동하기

  • 표시되는 뷰(여기서는 ViewA, ViewB, ..) 에 바인딩 속성 추가
//ViewA
@Binding var selectedIndex: Int
  • selectedIndex를 조정하는 버튼 등을 표시되는 뷰에 추가
Button {
	selectedIndex = selectedIndex >= 2 ? 0 : selectedIndex + 1
} label: {
	Text("next Tab")
}
profile
iOS 개발자가 되기 위한 스터디룸...

0개의 댓글