我无法将iOS的标准后退按钮变为navigationBar
,因为我无法在对象库中找到它,所以我可以使用代码或其他内容吗?
我只想要正常的标准蓝色后退按钮 - 你知道我的意思。
答案 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];
您的导航堆栈现在有两个UIViewControllers
:someOtherViewController
和anotherViewController
。
您的视图现在将有一个带有“其他VC”的后退按钮。这是刚刚移出视图的视图控制器的标题:
我还建议您阅读UINavigationControllers
的工作原理,然后再搜索此网站,以便自定义后退按钮。关于它有很多线索。
答案 1 :(得分:1)
您无法自行添加后退按钮。后退按钮是导航控制器的一部分。如果您将导航控制器嵌入到视图中,则会显示后退按钮,并由前一个视图的名称填充。
如果您正在使用故事板选择视图控制器,则在顶部菜单中选择“编辑器” - > “嵌入” - > “导航控制器”。
答案 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时。快乐导航!