【发布时间】:2015-08-11 16:34:50
【问题描述】:
当有一个ViewController 并插入Navigation Item 时,会自动创建一个后退按钮。在我的 tableView 中,我使用didSelectRowAtIndexPath 来区分ViewS,并且此视图使用相同的导航项,但不创建后退按钮。
【问题讨论】:
当有一个ViewController 并插入Navigation Item 时,会自动创建一个后退按钮。在我的 tableView 中,我使用didSelectRowAtIndexPath 来区分ViewS,并且此视图使用相同的导航项,但不创建后退按钮。
【问题讨论】:
您也可以在方法 tableView:didSelectedRowAtIndexPath: 中对之前的视图控制器进行推送:
func tableView(tableView: UITableView, didDeselectRowAtIndexPath indexPath: NSIndexPath) {
var newViewController = ..
self.navigationController!.pushViewController(newViewController, animated: true)
}
然后就完成了。后退按钮已经存在。
【讨论】:
后退按钮是在 push/segue 时自动创建的。如果您想自己创建此功能,则必须设置 UINavigationItem 的 leftBarButtonItem 属性并实现一个方法来调用:
func backBTPressed() {
self.navigationController.popViewControllerAnimated(yes)
}
见:
Add a back arrow to leftBarButtonItem?
creating back arrow shaped leftBarButtonItem on UINavigationController
【讨论】:
你可以试试 unwind segue。检查以下链接。
【讨论】: