You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
이제 NavigationView 의 TabView에 List 를 사용하여 아이템을 추가해주도록 하겠습니다.
TabView(selection: $selection){List(1...10, id: \.self){ index inNavigationLink(
destination:Text("아이템 \(index) 번 의 세부사항"),
label:{Text("아이템 \(index)")})}
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
-
TabView 란 ?
SwiftUI
는UIKit
의UITabBarController
와 동등한 기능을 가진TabView
를 제공합니다. 사용자가 화면 하단의 막대를 사용하여 여러 View를 전환할 수 있습니다.기본 형식으로 각 항목에 이미지와 제목을 제공해야 하며, 프로그래밍 방식으로 활성화되는 탭을 제어하려는 경우 선택적으로 태그를 추가해야 합니다.
탭 표시 줄 인터페이스 만들기
ContentView
에TabView{...}
를 사용하여 위에 만들어준ColorTabView
를 호출해주겠습니다.하단에 바 하나가 생성되었고 바를 터치해보면 각 뷰로 전환되는 것을 확인할 수 있습니다. 하지만 아무런 아이콘이 없기 때문에 어느 위치에 어느 뷰 가 있는지 확인할 수 없습니다.
SF Symbols
를 사용하여 탭 안에 아이콘을 넣어주겠습니다.TabItem{...}
을 사용하여TabView
에 아이콘 추가.tabItem
에 각각Image
와Text
로 추가할 수 있지만Label
을 이용하면 더 편합니다.탭 표시 줄 색상 사용자 지정
기본적으로 탭 표시 줄 항목의 색상은 파란색으로 설정됩니다. 다음과 같이
.accentColor
수정자를 사용하여하여TabView
의 아이콘 및 텍스트 색상을 변경할 수 있습니다.그러나
SwiftUI
프레임 워크에는 탭 바의 색상을 변경하기 위한 기본 제공 수정자가 없습니다.이를 변경하려면 아래와 같이
UIKit
의 [appearance API](https://developer.apple.com/documentation/uikit/uiappearance)를 사용할 수 있습니다.프로그래밍 방식으로 탭 간 전환
보통 탭 바를 터치하여 탭 간 전환을 하게 됩니다. 하지만 프로그래밍 방식으로 버튼을 생성해 특정 탭으로 전환할 수 있습니다.
ContentView
에@State
변수를 다음과 같이 선언해 줍니다.그리고
TabView
에selection
값으로 변수를 초기화해주겠습니다.이제 다음 탭으로 전환되는 버튼을 하나 만들어 주겠습니다.
TabView에서 탭 표시 줄 숨기기
다음
TabView
와NavigationView
구성 요소를 래핑 하여NavigationView
에TabView
를 포함할 수 있습니다.이제
NavigationView
의TabView
에List
를 사용하여 아이템을 추가해주도록 하겠습니다.탭 바의 첫 번째 부분이 비어있죠? 이곳에도
tag
와아이콘
을 추가합니다.Beta Was this translation helpful? Give feedback.
All reactions