2017-10-29 7 views
0

Storyboard에서 만든 UIViewController를 표시하기 위해 프로그래밍 방식으로 만든 UITabBarController를 사용하고 있습니다. 나는 왼쪽 상단에있는 취소 버튼이, 내가 TabBar의를 표시하지 않습니다 탭 중 하나에UITabBarController를 사용하지만 UINavigationController가 아닌 이전 ViewController로 돌아 가기

let storyboard = UIStoryboard(name: "Main", bundle: nil) 

// create tab one 
let tabOne = storyboard.instantiateViewController(withIdentifier: "feedVC") 
let tabOneBarItem = UITabBarItem(title: "feed", image: UIImage(named: "feed_icon"), selectedImage: UIImage(named: "feed_icon_selected")) 
     tabOne.tabBarItem = tabOneBarItem 

self.viewControllers = [tabOne] 

이러한을 제시한다. 나는 사용자를 이전 ViewController로 되돌려 보내는 것을 선호한다. 그러나 특정한 것으로 정착하십시오. 아래 코드는 작동하지만 TabBarController가 표시하지 않습니다 ... 취소/반환 버튼을 구현하는 가장 효율적인 방법은 무엇입니까?

UINavigationController를 사용해야합니까? 아니면 더 좋은 대안이 있습니까?

@IBAction func cancelBtnWasPressed(_ sender: Any) { 
    let returnVC = storyboard?.instantiateViewController(withIdentifier: "feedVC") 


    present(returnVC!, animated: true, completion: nil) 


} 

답변

0

내가 나를 위해 일한 해결책을 발견했다.

스위프트 4 :

self.tabBarController?.selectedIndex = 0 

이 다시 나는이 시도했다 i를 TabBarController

0

당신은 dismiss 현재 하나 있습니다

@IBAction func cancelBtnWasPressed(_ sender: Any) { 
    self.dismiss(animated: true, completion: nil) 
} 
+0

탭 중 첫 번째로 뷰를 이동합니다. 그것은 영향을 미치지 않습니다. 내가 해고해야하는 ViewController와 관련이있을 수 있습니까? –