
탭 선택시 화면이 전환되는 기능 처음에 UINavigationController의 툴바기능인줄알았지만 알고보니 해당기능을 제공해주는 UITabBarController라는게 있다는 것을 알게 되었다.
let tbc = UITabBarController()
let mainVC = MainViewController()
mainVC.bind(vm: mainVM)
let chatVC = ChatListViewController()
let userInfoVC = UserInfoViewConroller()
let imgSize = CGSize(width: 30, height: 30)
mainVC.tabBarItem = UITabBarItem(title: "게시판",image:UIImage(named: "047-house.png")!.imageResized(to:imgSize),tag: 0)
chatVC.tabBarItem = UITabBarItem(title: "채팅", image:UIImage(named: "098-message.png")!.imageResized(to: imgSize), tag: 0)
userInfoVC.tabBarItem = UITabBarItem(title: "내 정보", image: UIImage(named:"011-user.png")!.imageResized(to: imgSize), tag: 0)
tbc.setViewControllers([chatVC,UINavigationController(rootViewController: mainVC),userInfoVC], animated: false)
tbc.selectedIndex = 1
window?.rootViewController = tbc
다음과 같이 텝바뷰 버튼과 버튼과 연동될 화면을 미리 설정함.
그리고 텝바 뷰 컨트롤러에 setViewControllers 설정시 Navicationcontroller를 넣어줘야 뷰컨트롤러 쪽에서 네비게이션 컨트롤러에 접근이가능함
window.rootviewcontroller = UINavigationController(rootViewController: tbc) 뷰컨트롤러에서 네비게이션에 접근시 nil이 나오는데 왜그런지는 아직 잘 모르겠음.
