2013-04-05 99 views
1

我无法将iOS的标准后退按钮变为navigationBar,因为我无法在对象库中找到它,所以可以使用代码或其他方法来执行此操作吗?XCode中的标准后退按钮(XIB)

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

回答

2

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

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

一定要还设置了标题someOtherViewController,通常在它的viewDidLoad或初始化。我会告诉你为什么这是重要的,第二:

self.title = @"Some other VC"; 

再取第二UIViewController并将其推入您的导航控制器:

[navigationController pushViewController:anotherViewController animated:YES]; 

您现在有两个UIViewControllers您的导航堆栈上: someOtherViewControlleranotherViewController

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

我也建议如何UINavigationControllers工作阅读并搜索这个网站有点多用于自定义后退按钮。有很多关于它的线程。

1

你不能自己添加后退按钮。后退按钮是导航控制器的一部分。如果将导航控制器嵌入到视图中,后退按钮将显示并由前一视图的名称填充。

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


编辑:Here is an exmaple.

+0

我使用xibs,那么我该怎么做? – Bart 2013-04-05 15:18:32

+0

结账@亚伦的回答 – BloonsTowerDefence 2013-04-05 16:25:38

0

我正在运行Xcode 7.2。这让我发疯,但我明白了。这里有你需要使Back按钮出现的所有部分(做一个测试项目来证明它):

1)你必须有一个导航控制器,它必须被设置为初始视图控制器。因此,添加导航控制器,您将导入两个表格。单击导航控制器,然后在属性列表中,选中“初始视图控制器”框。您现在将看到并指向此视图的箭头。 2)在我们的例子中,我们想要一个ViewController而不是包含/连接的TableViewController,所以删除TableViewController(RootController)并添加一个新的ViewController。

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

完成!现在你正在运行的导航栏,你会自动获得所有赛段的后退箭头。测试这个。添加另一个ViewController并用现有ViewController上的按钮连接到它。使用从按钮到最新的ViewController的按住Control键的拖动方法。为您创建的新segue选择'show'选项。

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

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