XCode(XIB)中的标准后退按钮

时间:2013-04-05 14:55:13

标签: xcode

我无法将iOS的标准后退按钮变为navigationBar,因为我无法在对象库中找到它,所以我可以使用代码或其他内容吗?

我只想要正常的标准蓝色后退按钮 - 你知道我的意思。

3 个答案:

答案 0 :(得分:2)

要“自动”拥有后退按钮,首先需要UINavigationController。然后你需要采用不同的UIViewController并在UINavigationController的init方法中将其添加为根视图控制器:

UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:someOtherViewController];

请务必同时为someOtherViewController设置标题,通常在其viewDidLoad或初始化程序中。我会告诉你为什么这在一秒钟内很重要:

self.title = @"Some other VC";

然后再花一秒UIViewController并将其推到导航控制器上:

[navigationController pushViewController:anotherViewController animated:YES];

您的导航堆栈现在有两个UIViewControllerssomeOtherViewControlleranotherViewController

您的视图现在将有一个带有“其他VC”的后退按钮。这是刚刚移出视图的视图控制器的标题:

我还建议您阅读UINavigationControllers的工作原理,然后再搜索此网站,以便自定义后退按钮。关于它有很多线索。

答案 1 :(得分:1)

您无法自行添加后退按钮。后退按钮是导航控制器的一部分。如果您将导航控制器嵌入到视图中,则会显示后退按钮,并由前一个视图的名称填充。

如果您正在使用故事板选择视图控制器,则在顶部菜单中选择“编辑器” - > “嵌入” - > “导航控制器”。


修改:Here is an exmaple.

答案 2 :(得分:0)

我正在运行Xcode 7.2。这让我发疯,但我想通了。以下是显示“后退”按钮所需的所有部分(制作测试项目以证明它):

1)您必须拥有导航控制器,并且必须将其设置为初始视图控制器。因此添加导航控制器,您将导入两个表。单击导航控制器,然后在属性列表中,选中“"是否为初始视图控制器"”框。您现在将看到并指向此视图的箭头。

2)在我们的例子中,我们想要一个ViewController,而不是包含/连接的TableViewController,所以删除TableViewController(RootController)并添加一个新的ViewController。

3)通过单击导航控制器的顶部栏和箭头指向左侧的橙色圆圈,将导航控制器连接到新的ViewController。按住键盘上的控制按钮,然后单击并从橙色圆圈拖动到ViewController,然后松开。如果给出了如何连接两个视图的选项列表,请选择“根视图控制器”。

完成!现在您可以使用正常运行的导航栏,并自动获得添加的所有segue的后退箭头。测试一下。添加另一个ViewController并使用现有ViewController上的按钮连接到它。使用按钮的Control-click-drag方法到最新的ViewController。选择'显示'您创建的新segue的选项。

运行它。当您单击按钮并移动到最新的ViewController时,您会看到后退选项已自动出现。

这全部由导航控制器提供,但只有当您将另一个控制器设置为RootController时。快乐导航!