【发布时间】:2016-12-11 03:48:09
【问题描述】:
好的,所以我是 CoreData 的新手并使用 NSNumber(大约一天),我观看了有关 CoreData 的教程并设法使用我称为“成就”但现在的同一实体在 coreData 中存储了许多不同的成就我正在尝试根据给定的名称来获取数据,以搜索特定的“成就”并编辑其属性。
func addOneToAchievement(AchName: String) {
let getDataRequest:NSFetchRequest<Achievement> = Achievement.fetchRequest()
getDataRequest.predicate = NSPredicate(format: "theSearchName == %@" , AchName)
do {
let searchResults = try CoreDatabaseContoller.getContext().fetch(getDataRequest)
//print("number of results: \(searchResults.count)")
for result in searchResults as [Achievement] {
// print("\(result.theName!) \(result.theDescription!) is \(result.theImage!) \(result.aAmount!) / \(result.aNeededAmount!) is \(result.aStage!)")
result.aAmount! += 1
if result.aAmount! == result.aNeededAmount {
result.theImage! = "diamonds2"
result.aNeededAmount! = 100
result.aStage! = 2
}
}
}
catch {
print("ERROR: \(error)")
}
}
但是我遇到了一个问题,因为我的实体的 amount 属性是一个 NSNumber 并且发现我不能通过
的常用语法来增加它result.Amount! += 1
如何增加 result.Amount 的 NSNumber!然后将它与我为该成就更改的所有其他属性一起保存?
【问题讨论】:
标签: ios swift core-data swift2 nsnumber