是否可以将2个segue连接到UITableViewCell,指向两个不同的UIViewControllers?

时间:2016-03-21 19:32:59

标签: ios swift segue uistoryboard uistoryboardsegue

目前我有一个UITableViewCell并且我附加了一个show类型的segue - 当用户点击此方法被调用的单元格时:

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

     if (segue.identifier == "fullEventSegue"){


        fullEventDetails = segue.destinationViewController as? FullEvent


    }
}

然后用户从此单元格重定向到FullEvent类(和视图)。但是现在我想检查那是否是A类型的用户,如果是,则照常重定向,但如果没有 - 那么将他重定向到PartialEvent,类似于:

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
   if (user == "typeA")
    {
     if (segue.identifier == "fullEventSegue"){


        fullEventDetails = segue.destinationViewController as? FullEvent


    }
  }else{

if (segue.identifier == "partialEventSegue"){


        partialEventDetails = segue.destinationViewController as? PartialEvent


    }
  }
}

我试图在storyboard附加两个segues但是当我附加第二个时 - 第一个消失了,对我而言,我看起来只能附加一个segue。有没有办法修复它并同时使用它们?

1 个答案:

答案 0 :(得分:6)

将segue附加到视图控制器而不是单元格。然后,在didSelectRowAtIndexPath方法中实施测试逻辑。

根据用户类型,调用performSegueWithIdentifier并选择匹配的标识符。