在 iOS 7 中的两个简单视图控制器之间进行切换的正确方法
Posted
技术标签:
【中文标题】在 iOS 7 中的两个简单视图控制器之间进行切换的正确方法【英文标题】:Proper way to segue between two simple View Controllers in iOS 7 【发布时间】:2014-04-26 00:38:00 【问题描述】:我主要来自 C# 背景,所以 ios 的工作流程对我来说有点不寻常,至少现在是这样。
我遇到了从主菜单到另一个菜单/工作区的简单转场问题,然后能够返回到主菜单。
为了测试,显然我做错了什么。
我没有为此测试编写任何代码来显示问题。
我所做的只是,
创建新的单视图应用 将一个额外的视图控制器拖到工作区 将开始箭头拖动到新的视图控制器(因此它成为初始视图,与选中复选框以将其设置为初始视图相同) 为每个视图控制器添加了一个按钮 Ctrl + 单击并拖动按钮到对面视图 对于 segue 类型,我选择了“替换” 现在,如果我点击第二个按钮返回“主菜单”(本例中为绿色视图控制器),程序就会崩溃那我做错了什么?我需要添加某种形式的委托吗?
我确实找到了这个,尽管它在教程中提供的 segue 选项比我拥有的要少。 https://developer.apple.com/library/ios/referencelibrary/GettingStarted/RoadMapiOS/SecondTutorial.html
这些是当我 Ctrl + 单击从一个按钮到另一个视图时的选项 -推 -模态 -PopOver -风俗 -替换
【问题讨论】:
是的,我刚刚创建了另一个测试,执行了相同的步骤,但仍然获得比教程中更多的选项。一旦我获得超过 10 个代表点,我就可以发布它的图像。 :) 抱歉,我没有注意到 iPad 标签——只有 iPad 才能获得这些额外的选择。替换转场只能与拆分视图控制器一起使用。您没有收到“找不到拆分视图控制器祖先...”错误消息吗?那么你的问题到底是什么。如果你想从一个控制器转到另一个控制器(只有 2 个 UIViewControllers),请使用模态 segue。但是,您不会使用转场返回初始控制器,除非您使用展开转场。 您是否嵌入了导航控制器?你需要去编辑器->嵌入->导航控制器。你需要一个用于推送 segue 的导航控制器。 【参考方案1】:“你嵌入了导航控制器吗?你需要去编辑器->嵌入->导航控制器。你需要一个导航控制器来推送segue。-Kaushal Bisht”
这解决了我的问题。现在我将着手用自定义 UI 控件替换导航栏。
谢谢大家! :)
【讨论】:
以上是关于在 iOS 7 中的两个简单视图控制器之间进行切换的正确方法的主要内容,如果未能解决你的问题,请参考以下文章
在iOS 5中使用UISegmentedControl切换视图控制器