ios - 如何使用 IBAction 从一个 Storyboard移动到另一个 Storyboard?

标签 ios iphone swift storyboard

我正在尝试使用连接到 UIButton 的 IBAction 移回 Storyboard Main。
在应用程序委托(delegate)中设置如下:

    func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
    // Override point for customization after application launch.

    if doneOnce == false {
        doneOnce = true
        window?.rootViewController = UIStoryboard.init(name: "Onboarding", bundle: nil).instantiateInitialViewController()
    } else {
        window?.rootViewController = UIStoryboard.init(name: "Main", bundle: nil).instantiateInitialViewController()
    }

    return true
}

当我处于 Storyboard“Onboarding”时,我尝试返回 Storyboard“Main”:
这些是我尝试过的 3 个代码片段。

    @IBAction func tutorialDone(sender: AnyObject) {


    let appDelegateTemp = UIApplication.sharedApplication().delegate as! AppDelegate
    appDelegateTemp.window?.rootViewController = UIStoryboard.init(name: "Main", bundle: nil).instantiateInitialViewController()


    //let storyboard = UIStoryboard(name: "Main", bundle: nil)
    //let vc = storyboard.instantiateInitialViewController()
    //showViewController(vc! as UIViewController, sender: self)

    //let storyboard = UIStoryboard(name: "Main", bundle: nil)
    //let vc = storyboard.instantiateViewControllerWithIdentifier("ViewController") as UIViewController
    //presentViewController(vc, animated: true, completion: nil)
}

但是当我按下触发tutorialDone的UIButton时,我收到此错误:

Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[UIViewController tutorialDone:]: unrecognized selector sent to instance

提前致谢!

最佳答案

您可以使用标识符从 Storyboard启动 View Controller :

    let storyboard = UIStoryboard(name: "myStoryboardName", bundle: nil)
    let vc = storyboard.instantiateViewControllerWithIdentifier("nextViewController") as UIViewController
    presentViewController(vc, animated: true, completion: nil) 

不要忘记为你的 nextViewController 提供 ID

引用this_link

关于ios - 如何使用 IBAction 从一个 Storyboard移动到另一个 Storyboard?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39193141/

相关文章:

ios - 创建圆圈并将其用作 "bar graph"

iphone - 如何将 Sprite 显示为启动画面 5 秒钟?

iphone - 以编程方式将 UIImage 比率更改为 iphone 中的 fb 封面

iphone - iOS - 获取 Info.plist 文件

swift - NSURL 错误 - 文件不存在

ios - iOS 中 UIImageView 的动画圆形 mask

ios - 如何在警报 Controller 的文本字段中使用数字键盘 [swift]

objective-c - 对于 Objective-C,实现值对数组的最有效方法是什么?

ios - iOS Swift 中使用 CBC 模式的 AES 128 解密

ios - iAd Interstitials 显示不一致?根本不在模拟器上