저는 Swift에서 첫 번째 iOS 앱을 만들고 있는데, 기본적인 것을 고수하고 있습니다. 커스텀 클래스를 만들고 변수를 설정하고 싶습니다. . 나는맞춤 클래스에 변수를 설정할 수없는 이유는 무엇입니까?
이 내 사용자 정의 클래스에는 멤버 [이름]이없는 유형 [항목]의 오류 "값을보고 계속 :
import UIKit
import Foundation
import CoreData
class Item:NSManagedObject {
var name:String?
convenience init(name: String?, insertIntoManagedObjectContext context: NSManagedObjectContext!) {
let entity = NSEntityDescription.entityForName("ItemEntity", inManagedObjectContext: context)!
self.init(entity: entity, insertIntoManagedObjectContext: context)
}
}
그리고 이것은 그것을 사용하려고 내 코드입니다 :
을func editItem(id:Int, category:String, brand:String, name:String, colour:String, purchasePrice:String, purchaseDate:String, expiryDate:String) -> Int {
// vars
let appDelegate = UIApplication.sharedApplication().delegate as! AppDelegate
let managedContext = appDelegate.managedObjectContext
let entity = NSEntityDescription.entityForName("ItemEntity", inManagedObjectContext: managedContext)
let item = NSManagedObject(entity: entity!, insertIntoManagedObjectContext: managedContext)
var listItem = [Item]()
let fetchRequest = NSFetchRequest(entityName: "ItemEntity")
// fetch the item from the core data with the same ID
do{
let predicate = NSPredicate(format: "id == %@", String(id))
fetchRequest.predicate = predicate
fetchRequest.fetchLimit = 1
let results = try managedContext.executeFetchRequest(fetchRequest)
listItem = results as! [Item]
}
catch {
let fetchError = error as NSError
print (fetchError)
}
// edit the item
listItem.name = "text" // !! THIS IS THE LINE WHICH DISPLAYS THE ERROR
// save the item
do {
try managedContext.save()
}
catch {
let saveError = error as NSError
print (saveError)
}
}
는 정말이 일이 너무 기본적인 것 같지만 인터넷 검색을 많이 내가 그것을 알아낼 도움이되지 않은 당신의 도움을 주셔서 감사합니다.
감사합니다. – Christie