使用ShouldPerformSegue取消在情节提要中创建的segue

时间:2020-03-04 14:27:40

标签: swift macos segue

我有一个故事板,是使用情节提要板创建的,在某些情况下,我不希望执行该故事。

segue和我的添加按钮的视觉表示

The visual representation of the segue and my add button

segue与我的按钮动作有关

The segue connected to the action of my button

segue的标识符

The segue's identifier

1 个答案:

答案 0 :(得分:0)

解决方案是在按钮的NSViewController中触发segue覆盖shouldPerformSegue并在其中执行检查以确定是否应执行segue。

override func shouldPerformSegue(withIdentifier identifier: NSStoryboardSegue.Identifier, sender: Any?) -> Bool
{
    var result = false
    if identifier == "AddPayeeSegue"
    {
        if AccountingData.instance.book.account.count > 0
        {
                result = true
            }
        }
        return result
    }