ios swift: return 到上一个视图控制器

ios swift: return to previous view controller

从动态 tableView "CardSets" 转入静态 tableView "AddCardSet" 以输入一些数据。成功 save() 方法后,我想将用户发送回初始 tableView "CardSets"。我该怎么做?

我是否必须在 save 按钮上设置 segue?或者有更短的路吗?

最好的选择是在这种情况下使用 Unwind segue。它们允许您通过导航堆栈跳回。而且它们独立于您的控制器的呈现方式 - 模态或 UINavigationController 堆栈内。更重要的是,它们允许您跳回多个级别。

请查看Apple's Tech Note and this great answer

您可以使用 popViewControllerAnimated:

if let navigationController = self.navigationController
{
    navigationController.popViewControllerAnimated(true)
}

最好的答案是像这样创建单音:

例如:

class拼贴画{

var classes: [Class] = []
static var collageSharedInsttance : Collage? = nil

static func GetSharedInstance() -> Collage {
    if collageSharedInsttance == nil {
        collageSharedInsttance = Collage()
    }

    return collageSharedInsttance!
}

}

并像这样从第二个控制器访问您的数据:

    var JohnBryceCollage = Collage.GetSharedInstance()