【发布时间】:2016-06-29 18:50:47
【问题描述】:
我正在尝试通过拆分它来重构我的一个 ViewController。 这是一个将进行卡片操作的应用程序。我有一个可以编辑多种类型的随机播放的控制器,但现在我将它拆分为单独的控制器,用于每个单独的随机播放类型。
还有另一个故事板可让您选择动作,它设置为从隐藏按钮中进行转场。 segues 指向情节提要参考。最初我为调度故事板中的 segues 制作场景,然后使用 Xcode 的 Editor>Refactor to Storyboard 菜单项对其进行重构。
然后我为 FaroEditor 视图控制器制作了一个新的故事板。然后我试图弄清楚如何添加对这个故事板的引用。我终于在对象库中找到了“故事板参考”。
我把它放在 dispatch storyboard 中,并将它设置为指向 FaroEditor storyboard:
我做了一些 photoshopping,将故事板、故事板引用属性和 segue 属性放在一个图像中。
当我运行并触发 segue 时,我抛出了一个异常,没有关于它是什么的信息:
我再次使用 Photoshop 将顶部的三个堆栈帧复制并粘贴到一个图像中。
我不知道如何诊断和解决这个问题。有什么想法吗?
【问题讨论】:
-
此时
segueId等于什么? -
它在回溯中是 'editFaro',这是原始故事板中 segue 的 ID。
-
我做了更多调查。我单步执行了机器代码,当 StoryBoard.instantiateViewControllerWithIdentifier: 被调用时它正在爆炸。我无法解密它在哪里获取它正在使用的标识符。在调试器中,我可以实例化目标故事板,然后实例化 ViewControllerWithIdentifier: 使用我手动分配的标识符,但我不知道 UIKit 代码如何获取视图控制器的明显错误标识符。无论我是否手动给视图控制器一个标识符,它都会失败。
标签: xcode swift uiviewcontroller segue xcode-storyboard