所以我正在开发一个应用程序,并最终开始构建实际的模块,而不是用于测试的 Playground 和实用程序应用程序。所以我真的很想做这件事,因为我现在正投入真正的交易。我希望得到的建议能够帮助我实现应用程序“流程”的目标,而无需我将一些东西组合在一起,这些东西稍后会回来咬我。
假设我有一个可以分支到多个 Storyboard的主屏幕(单个 View Controller )。我想要触发转换的机制是用户用手指在主屏幕上抓取图像,然后将其从屏幕上弹开。当图像不再出现在屏幕上时,我想转换到与该图像对应的 Storyboard。例如,用户可能会轻拂“设置”图像以打开设置面板。
[home storyboard] -- [user flicks image off screen] --> [alternate storyboard]
我已经完成了这种工作,但是按照我现在的方式,我不确定如何能够从第二个 Storyboard导航回主 Storyboard。对我来说,它也显得不干净和老套。
Right now it is set up as such:
Home is its own storyboard - main.storyboard
Home contains one simple viewcontroller
Alt is another storyboard - alt.storyboard
Alt contains a navigationcontroller
我怎样才能促进一些事情,让 Alt 的导航 Controller 识别出它只是在主页 Storyboard 中,以便它提供一个用于导航回家的“后退”按钮?
或者,如果有人对我如何以更简洁的方式完成此任务有任何建议,我将不胜感激。为了组织起见,我希望每个“模块”(即 alt.storyboard 的内容)位于不同的 Storyboard中。
这是我用来续写我的第二个 Storyboard的代码:
if !(recognizer.view!.window == nil) {
print("object left window")
let viewController: UIViewController = (self.storyboard?.instantiateViewControllerWithIdentifier("Alt"))! as UIViewController
self.presentViewController(viewController, animated: true, completion: nil)
}
非常感谢您抽出宝贵的时间来检查这一点,如果我还不够清楚,请告诉我。
最佳答案
您可以将主视图 Controller (来自 Home
Storyboard)本身放入导航 Controller 中,然后简单地从您想要到达的 Storyboard中推送初始 View Controller (在您的示例中 Alt
Storyboard)与自定义过渡。所以除了 Home
之外的所有其他 Storyboard的 View Controller 不应该嵌入到导航 Controller 中!
关于ios - Swift:寻求有关完成 Storyboard / View Controller 之间特定流程的建议,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36487989/