[英]Swift and core data - Array and cell basics
如果我将数组定义为:
var myList: Array <AnyObject> = []
然后使用viewDidLoad覆盖函数填充此数组,如下所示:
override func viewDidAppear(animated: Bool) {
let appDel:AppDelegate = UIApplication.sharedApplication().delegate as AppDelegate
let context:NSManagedObjectContext = appDel.managedObjectContext!
let freq = NSFetchRequest(entityName: "List")
myList = context.executeFetchRequest(freq, error: nil)!
tableView.reloadData()
}
而我的“列表”仅包含用户名作为字符串。 “ myList”中到底存储了什么? 它和带有用户名的字符串数组一样简单吗?
任何想法和解释将不胜感激。
如果您已定义myList
, NSManagedObject
myList
将包含NSManagedObject
或List
实例的子类。 每个对象都将具有您为该核心数据对象定义的属性。
indexPath
是一个类,用于表示UITableView
的row
和section
。 这也用于标识UICollectionView
的item
和section
。
executeFetchRequest
从CoreData数据存储executeFetchRequest
返回托管对象的数组。 基本上有两种方法可以处理它们。
首先是按原样使用它们。 它们都是NSManagedObject
实例,您可以使用诸如valueForKey:
之NSManagedObject
方法来获取其值。
第二种方法是定义您自己的NSManagedObject
子NSManagedObject
(在您的情况下可能名为List
,然后在该对象上定义属性,使您可以直接访问值。
整个核心数据既强大又复杂。 我强烈建议您通读Apple或其他教程,以掌握它。 (请注意,Apple的某些文档建议以称为Core Data Beginning Point的东西开始 。有帮助的是,Apple已经撤消了该文档,但尚未从其他文档中删除对该文档的引用。)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.