取消按钮而不是导航控制器中的后退按钮

Cancel button instead of a back button in Navigation Controller

我有一个关于视图之间导航的一般性问题。

我有一个嵌入在导航控制器中的视图控制器 1。在导航栏中,我有一个按钮来添加数据,按下时,它会通过 segue Show(在 Storyboard 中)转到视图控制器 2。在视图控制器 2 中,当我单击右侧导航栏中的保存按钮时,我 return 在收集数据后查看控制器 1。我收集数据:

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject!) {...}

我更愿意在视图控制器 2 中使用取消按钮而不是后退按钮,而不是在视图控制器 1 中使用 return。

我觉得我的设计有问题,但我不知道是什么。

事实上,我正在寻找与应用程序时钟非常相似的东西。

你有什么想法吗?

编辑:这是故事板。你会注意到两个控制器之间的循环。当我点击保存时第一个控制器上没有自动返回按钮怎么办?

您可以通过将此代码添加到包含它的视图控制器(在 viewDidLoad 中)来自定义后退按钮的文本:

let backItem = UIBarButtonItem(title: "Cancel", style: .Bordered, target: nil, action: nil)
navigationItem.backBarButtonItem = backItem

您只需 select 您的 UIBarButtonItem,单击显示属性检查器,单击标识符,然后从下拉菜单中单击 select "Cancel"。

@IBAction func cancelDownload(sender: AnyObject) {
    dismissViewControllerAnimated(true, completion: nil)

}