【问题标题】:How to transport the Spotlight API code to the view controller如何将 Spotlight API 代码传输到视图控制器
【发布时间】:2015-11-28 15:26:59
【问题描述】:

我已经编写了我的 Spotlight API 代码,它似乎工作正常。我可以在聚光灯下检查它,但只有一个问题:

它不会将我带到所需的视图控制器!我怎么做?我添加了一个

    override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {

    if segue.identifier == "showIt" {

        let ThatVC = segue.destinationViewController as! ItThat


    }
}

但它仍然无法将我带到正确的位置。我哪里错了?

【问题讨论】:

    标签: swift2 ios9 xcode7 spotlight


    【解决方案1】:

    prepareForSegue 用于通知视图控制器即将执行转场(准备什么数据,确认目的地等)。 prepareForSegue 仅在 segue 已经启动时调用。但是它本身并不执行 segue。

    如果您的转场是无条件的,只需在 Interface Builder 中使用标准转场(从 UIButton 拉到您的目标场景)。

    如果您的转场是有条件的,则从 UIButton 的父场景拉到 Interface Builder 中的目标场景。完成后,您可以创建一个新的@IBAction 并手动执行转场。

     @IBAction func fooAction() {
          performSegueWithIdentifier("showIt", sender: self)
     }
    

    只要确保 "showIt" 是 segue 的标识符。

    【讨论】:

    • 这就是我所拥有的。运行时出现 SIGABRT 错误。
    • 删除你的prepareForSegue。它什么也没做。确保您已正确连接 segues/identifiers/@IBActions
    • 他们已经设置好了。当 prepareForSegue 消失时,SIGABRT 消失了,但它也消除了我需要它的目的。当我在聚光灯下搜索任何内容并按下它时,它应该会将我带到我的视图控制器。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-19
    • 1970-01-01
    • 2023-03-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多