2017-02-26 88 views
0

我想从CoreData在TableView中的斯威夫特3价值型“的AppDelegate”没有成员“manageObjectContext”

打印数据的iOS应用程序在ListTableViewController文件我有这样的代码:

override func viewDidAppear(_ animated: Bool) { 
    let appDel: AppDelegate = UIApplication.shared.delegate as! AppDelegate 
    let managedObjectContext = appDel.persistentContainer.viewContext 
    let contxt :NSManagedObjectContext = appDel.managedObjectContext! 

    let freq = NSFetchRequest<NSFetchRequestResult>(entityName:"Location") 


    tableView.reloadData() 
} 

在让利方面行,我有一个错误:“价值型‘的AppDelegate’没有成员‘manageObjectContext’”

你有关于我的问题的想法?

感谢的

+0

'appDel.managedObjectContext!'应该只是'managedObjectContext!',不是? – dasblinkenlight

+0

即使没有'!',只需'let contxt:NSManagedObjectContext = managedObjectContext',因为它不是可选的 –

回答

2

错误表明您没有指定任何值在Appdeleget变量名managedObjectContext。首先,你必须定义一个变量,然后在其中分配一个ManagedObjectContext对象。但是你可以通过下面的代码来获得ManagedObjectContext对象引用。

let managedObjectContext = appDel.persistentContainer.viewContext as! NSManagedObjectContext 
let contxt = managedObjectContext 
+0

它是正确的!谢谢 ! :-) – Romain

相关问题