segue故事板条件问题

我有这两个控制器喜欢segue:

在此处输入图像描述

我的问题是:

当我点击选定的表格视图时,我必须遵循segue,所以转到其他控制器,但如果特定条件为真,我必须显示广告提醒视图,所以我不遵循segue所以不要去那些控制器。

这样当我点击选定的单元格时,我总是在另一个控制器上。

我该如何解决这个问题?

如果你覆盖这个函数,如果你返回false,segue将不会继续,这会让你机会在某些条件下显示警告,之后你可以执行SegueWithIdentifier(“segueidentifier”,sender:self),以及你的好处。

override func shouldPerformSegueWithIdentifier(identifier: String!, sender: AnyObject?) -> Bool { if identifier == "segueidentifier" { //show warning and perform segue with this identifier on the accept button listener. return false } } return true } 

您可以将一个segue从一个控制器添加到另一个控制器,而无需指定触发segue的精确视图。 然后在didSelectRow方法中检查你的条件,如果你需要显示新的视图控制器,则调用performSegue方法:

 if condition { performSegue(withIdentifier: "MySegueIdentifier", sender: nil) } else { //show ad here } 

要在控制器之间添加segue,只需用鼠标右键从一个控制器拖动到另一个控制器,然后选择“显示”。

在此处输入图像描述

然后选择segue并为其添加字符串标识符:

在此处输入图像描述

调用performSegue方法时,请确保在代码中使用相同的字符串。