“AppDelegate”类型的值没有成员“manageObjectContext”
Posted
技术标签:
【中文标题】“AppDelegate”类型的值没有成员“manageObjectContext”【英文标题】:Value of type 'AppDelegate' has no member 'manageObjectContext' 【发布时间】:2017-02-26 11:48:11 【问题描述】:我想在 Swift 3 中为 ios 应用程序的 TableView 中的 CoreData 打印数据。
在 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()
在 let 上下文行,我有一个错误:“'AppDelegate' 类型的值没有成员 'manageObjectContext'”
你知道我的问题吗?
谢谢
【问题讨论】:
appDel.managedObjectContext!
应该只是 managedObjectContext!
,不是吗?
即使没有!
,只需let contxt : NSManagedObjectContext = managedObjectContext
,因为它不是可选的
【参考方案1】:
错误表明您没有为 Appdeleget 中的变量名 managedObjectContext 分配任何值。首先,您必须定义一个变量,然后将一个 ManagedObjectContext 对象分配给它。但是您也可以通过以下代码获取 ManagedObjectContext 对象引用。
let managedObjectContext = appDel.persistentContainer.viewContext as! NSManagedObjectContext
let contxt = managedObjectContext
【讨论】:
但持久化容器适用于 iOS 10.0,那么 iOS 9.0 呢以上是关于“AppDelegate”类型的值没有成员“manageObjectContext”的主要内容,如果未能解决你的问题,请参考以下文章
“AppDelegate”类型的值没有成员“manageObjectContext”
Swift:实现快捷方式项目(3D 触摸)共享项目错误“AppDelegate 类型的值没有当前成员”
“FileManager”类型的值没有成员“urlsForDirectory”-AppDelegate Swift 3 错误
“AppDelegate”类型的IOS开发值没有成员“managedObjectContext”Xcode 10