【发布时间】:2014-11-19 05:04:12
【问题描述】:
我有一个 CoreData 项目,其中设置了 FilterViewController,我想在 DisplayResultsViewController 中显示结果。
我知道这与委托有关,但我不知道如何解决它。我知道我不是第一个将数据从一个 VC 转移到另一个的人,但我不知道答案。
// Top of FilterViewController
import UIKit
import CoreData
protocol FilterViewControllerDelegate: class {
func filterViewController(filter: FilterViewController,
didSelectPredicate predicate:NSPredicate?,
sortDescriptor:NSSortDescriptor?)
}
// Predicates set here
// IBAction to trigger the segue
@IBAction func filter(sender: UIBarButtonItem) {
delegate!.filterViewController(self,
didSelectPredicate: selectedPredicate,
sortDescriptor: selectedSortDescriptor)
dismissViewControllerAnimated(true, completion:nil)
}
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
if segue.identifier == "toDisplaySearchResults" {
let navController = segue.destinationViewController as UINavigationController
let filterVC = navController.topViewController as StretchSelectorViewController
filterVC.coreDataStack = coreDataStack
filterVC.delegate = self // **ERROR here
}
}
【问题讨论】:
标签: ios core-data swift xcode6 uistoryboardsegue