- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在快速尝试基于核心数据的应用程序,其中我正在执行以下步骤:
下面是我使用的代码:
let appDelegate = UIApplication.sharedApplication().delegate as AppDelegate
let managedObjectContext = appDelegate.managedObjectContext!
// 1. Retrieve data from plist
var defaultDataPlistPath = NSBundle.mainBundle().pathForResource("DefaultData", ofType: "plist")
var defaultDataArray = NSArray(contentsOfFile: defaultDataPlistPath!)
// 2. Store retrieved data in local db using core data apis
for menuCategoryDict in defaultDataArray {
// storing menu categories
var attributes = menuCategoryDict["attributes"]
var menuCategory : MenuCategories = NSEntityDescription.insertNewObjectForEntityForName("MenuCategories", inManagedObjectContext: managedObjectContext) as MenuCategories
menuCategory.setValuesForKeysWithDictionary(attributes) // this line is giving compilation error :(
}
appDelegate.saveContext()
问题是 - 由于某些原因,我遇到了编译错误:'AnyObject?'与此行的“[NSObject : AnyObject]”不同:
menuCategory.setValuesForKeysWithDictionary(attributes)
一窍不通,求教
最佳答案
当您尝试从字典中检索值时,给定键可能不存在任何值。因此,在 swift 中,您得到的不是一个值,而是一个包含在选项类型中的值。错误消息基本上说“属性”是一个包裹在选项中的 AnyObject,而不是 AnyObject 类型的值。换句话说,错误消息意味着您必须在使用之前检查该值是否确实存在,否则您的应用程序可能会崩溃。解包类型的最简单方法是编写“属性!”这里。但是你真的应该阅读选项类型,因为它是 Swift 中一个非常基本的概念:
关于ios - managedObject 上的 setValuesForKeysWithDictionary 在 swift 中给出编译错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26355561/
我正在使用以下方法初始化 NSManagedObject 子类: - (void)setValuesForKeysWithDictionary:(NSDictionary *)keyedValues
我正在使用 setValuesForKeysWithDictionary 来填充我的模型对象。模型对象定义为 @interface CommonModel : NSObject @proper
所以我有一个 NSDictionary,其中一个键是字典数组。我要映射到的类具有匹配的键名和 setter 。 setValuesForKeysWithDictionary 可以为我填写子词典吗?当我
似乎 Swift 4 正在实现与 (void)setValuesForKeysWithDictionary() 不同的方法,在 Swift 4 中什么是这个函数的合适替代品? 我有的结构 struct
我从 Web 服务解析一些 JSON,这给了我一个 NSDictionary,我使用这个字典来填充 NSObject 类型的 valueEntity 上的属性 [myObject setValuesF
代码如下: func observeMessages() { let ref = FIRDatabase.database().reference().child("messages")
我正在快速尝试基于核心数据的应用程序,其中我正在执行以下步骤: 从 plist 中检索数据 遍历检索到的数据 在每次迭代期间,在 managedObjectContext 中插入一个 managedO
我有一个json字符串 {"name":"test","bar":{"name":"testBar"}} 在 objective-c 中我有一个对象 @interface Foo : NSObject
所以我很高兴地使用 JSON 和 setValuesForKeysWithDictionary 将数据猛击到我的系统中,直到我遇到一个具有 NSDate 属性的对象。 JSON 包含以下格式的日期:
我正在从我的 API 中提取一个 JSON 对象并使用以下代码创建它(事后看来不是正确的方法): + (YActivity *)instanceFromDictionary:(NSDictionary
我有将一些 json 反序列化为对象的代码。此代码在 iPhone 5s、iPhone 6 和 iPhone 6+ 上运行良好。 但是,在 iPhone 5 或 iPhone 4s 上运行时,出现错误
我是一名优秀的程序员,十分优秀!