繁体   English   中英

Swift和核心数据-数组和单元格基础知识

[英]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”中到底存储了什么? 它和带有用户名的字符串数组一样简单吗?

任何想法和解释将不胜感激。

如果您已定义myListNSManagedObject myList将包含NSManagedObjectList实例的子类。 每个对象都将具有您为该核心数据对象定义的属性。

indexPath是一个类,用于表示UITableViewrowsection 这也用于标识UICollectionViewitemsection

executeFetchRequest从CoreData数据存储executeFetchRequest返回托管对象的数组。 基本上有两种方法可以处理它们。

首先是按原样使用它们。 它们都是NSManagedObject实例,您可以使用诸如valueForKey:NSManagedObject方法来获取其值。

第二种方法是定义您自己的NSManagedObjectNSManagedObject (在您的情况下可能名为List ,然后在该对象上定义属性,使您可以直接访问值。

整个核心数据既强大又复杂。 我强烈建议您通读Apple其他教程,以掌握它。 (请注意,Apple的某些文档建议以称为Core Data Beginning Point的东西开始 。有帮助的是,Apple已经撤消了该文档,但尚未从其他文档中删除对该文档的引用。)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM