티스토리 뷰

iOS

iOS) UITabBarController Programmatically

Ekko0701 2022. 8. 9. 17:10

StoryBoard 없이 탭바를 사용해 보자.

 

1. Main Interface 설정

먼저 TARGETS- General - Deployment Info의 Main Interface가 Main으로 되어있는데 지워주자.

 

2. Info.plist 설정

info.plist의 StoryBoard Name도 삭제하자.

 

3. Main.storyboard 삭제

 

4. TabBar 추가 ( SceneDelegate)

새로 만든 ViewController 세 개를 탭바에 추가해보자.

앱이 실행될때 탭바가 추가되도록 SceneDelegate에 작성하였다.

func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions) {
        
        let StatisticVC = StatisticsViewController()
        let TimerVC = TimerViewController()
        let SettingVC = SettingViewController()
        
        // 탭바 생성
        let tabBarController = UITabBarController()
        
        // 탭바에 VC 추가
        tabBarController.setViewControllers([StatisticVC, TimerVC, SettingVC], animated: false)
        
        StatisticVC.tabBarItem = UITabBarItem(title: "통계", image: UIImage(systemName: "chart.bar"), tag: 0)
        TimerVC.tabBarItem = UITabBarItem(title: "타이머", image: UIImage(systemName: "clock"), tag: 1)
        SettingVC.tabBarItem = UITabBarItem(title: "설정", image: UIImage(systemName: "gearshape"), tag: 2)
        
        // 탭바 색상
        tabBarController.tabBar.backgroundColor = .cyan
        
        // 선택된 아이템 색상
        tabBarController.tabBar.tintColor = .black
        
        // 탭바 시작 인덱스
        tabBarController.selectedIndex = 1
        
        // 탭바를 rootViewController로 설정
        window?.rootViewController = tabBarController
        
        guard let _ = (scene as? UIWindowScene) else { return }
    }

 

이렇게 하고 실행해보면 잘 동작한다.

'iOS' 카테고리의 다른 글

iOS) CocoaPods - pod install error 해결방법  (0) 2022.08.23
iOS) CocoaPods 사용하기  (0) 2022.08.23
iOS) UIDatePicker - 2 / Count Down Timer 생성  (0) 2022.07.26
iOS) UIDatePicker - 1  (0) 2022.07.24
iOS) UICollectionView Programmatically  (0) 2022.07.20
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/07   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
글 보관함