コアデータを初めて使用しているため、NSNumberを使用して(約1日)、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)")
}
}
しかし、私のエンティティの量属性がするNSNumberであると私は、私はインクリメントすることができますどのように
result.Amount! += 1
の通常の構文でそれをインクリメントすることができないことが判明したため、私は、問題に遭遇結果のNSNumber.Amount!その特定の業績について私が変更した他のすべての属性と一緒にそれを保存しますか?
ありがとうございました! :) – Astrum