Swift:为什么“performSegueWithIdentifier”会发生两次?

时间:2015-11-24 16:25:09

标签: swift uibutton segue

在我的应用程序中,我有以下故事板片段:

enter image description here

从粉红色按钮我添加了一个名为“toFishPic”的show segue到了更高的UIViewController。这是与粉红色按钮链接的快速代码:

@IBAction func toFishPhoto(sender: UIButton) {

    dispatch_async(dispatch_get_main_queue()) {
        self.performSegueWithIdentifier("toFishPic", sender: self)
    }
}

我不知道为什么,但是当点击粉红色按钮时,右侧的UIViewConroller(具有大UIImageView的那个)被加载两次,好像之后有一个相同的。为什么会这样?

1 个答案:

答案 0 :(得分:5)

我认为你直接将粉红色按钮链接到PhotoViewController而不是ActionFishViewController到PhotoViewController。如果您要使用performSegueWithIdentifier,请不要直接链接并重新连接控制器。

尝试不要调用self.performSegueWithIdentifier(" toFishPic",sender:self)(//)并检查是否可以推送到PhotoViewController。如果它的工作意味着您将按钮直接链接到PhotoViewController。