Xcode / Swift:如何实现后退按钮?

Xcode / Swift: How I implement a back button?

我刚开始使用 Xcode 和 Swift。

我尝试为 iOS 构建我的第一个小应用程序。但是现在我遇到了问题,我不知道如何实现后退按钮,所以我回到了之前的视图。

我的故事板是这样的:

当我打开 A-Z 视图时,我想显示后退箭头,这使我回到项目 2 视图。

为了打开 A-Z 视图,我将按钮 "Medikamente A - Z" 连接到导航控制器。

要实现后退按钮,您的根视图控制器必须是导航控制器。
第一个视图控制器成为导航控制器的导航根。
如果你想呈现另一个视图控制器,你 select 一个 "Show Detail" 关系作为应该显示视图控制器的按钮的动作。为此,按住 Ctrl 键单击并从按钮拖动到目标视图控制器和 select "Show Detail".

使用情节提要时,后退按钮通常通过展开转场来实现。

我通常喜欢在 UI 相关主题上关注 raywenderlich toturials,例如 - http://www.raywenderlich.com/113394/storyboards-tutorial-in-ios-9-part-2

它包括一个详细的示例,说明如何在故事板中实现后退按钮。引用它 -

Storyboards provide the ability to ‘go back’ with something called an unwind segue, which you’ll implement next. There are three main steps: 1. Create an object for the user to select, usually a button. 2. Create an unwind method in the controller that you want to return to. 3. Hook up the method and the object in the storyboard.

使用 UINavigationController 时,每当您按下一个新的 ViewController 后退按钮将自动出现,因此您可以跳回到上一个视图控制器。

所以它的工作原理是这样的: UIViewController -> UIViewController -> UIViewController

后退按钮将出现在最后 2 个上,因此您可以弹出前一个 ViewController。

您无需为显示后退按钮进行任何额外编码,它会自行完成。我希望这会清除它。如果您有任何问题,请告诉我。

我遇到了同样的问题,即使在故事板上后退按钮在设计时是可见的。 我删除了 segue,并用 "Show" 而不是 "Show detail" 重新创建了它。将 segue 更改为 "Show" 没有任何效果。我认为这是一个错误,所以如果您错过了后退按钮,请删除并重新创建 segue。