2017-08-24 96 views
0

我有一個NavigationViewController,根是一個普通的UIViewController。 我提出一個TableViewController編程方式:導航欄後退按鈕不起作用

self.performSegue(withIdentifier: "showTableViewVC", sender: nil) 

這TableViewVC正顯示出BACK按鈕,但它是不工作的。

該TableViewVC的segue是一個「show/push」segue。

如何導航回到UIViewController?

enter image description here

+0

您需要添加另一個原因請看以前的VC彈回,並添加要執行的動作,如果我錯了,你沒有使用'UINavigationController'使導航是賽格瑞 –

+0

指正,您正在使用只有繼續不是嗎? –

+0

我有一個嵌入根的NavigationController。我使用segue來顯示DetailTableViewVC。 – Jan

回答

1

1.添加UIBarbutton到showTableViewVC導航控制器。

override func viewDidLoad() { 

    super.viewDidLoad() 

    let backBarButton = UIBarButtonItem.init(barButtonSystemItem: .add, target: self, action: #selector(backButtonTapped(sender:))) as UIBarButtonItem 

    self.navigationItem.setLeftBarButton(backBarButton, animated: true) 

} 

2.實現後退按鈕動作。

func backButtonTapped(sender: UIBarButtonItem) 
{ 
    self.navigationController?.popViewController(animated: true) 
} 
+0

self.navigationController放置''[]''所以它似乎也正確堆疊backButtonTapped被觸發但是「popViewController(animated:true)」或'popToRoot''不會彈出。 – Jan