2015-02-13 4 views
9

Я следил за руководством по использованию значений с использованием CoreData в QuickTime. У меня была ошибка «AppDelegate» не имеет члена с именем «managedObjectContext». Руководство использовало бета-версию XCode, было ли это изменено и какие-либо идеи о том, как я могу исправить свою проблему.«AppDelegate» не имеет члена с именем «managedObjectContext»

@IBAction func saveButtonPushed(sender: AnyObject) { 
    var appDel:AppDelegate = (UIApplication.sharedApplication().delegate as AppDelegate) 
    var context:NSManagedObjectContext = appDel.managedObjectContext 

    var newName = NSEntityDescription.insertNewObjectForEntityForName("SavedFills", inManagedObjectContext: context) as NSManagedObject 
    newName.setValue("Test", forKey: "name") 
    newName.setValue("Test2", forKey: "password") 

    context.save(nil) 

    println(newName) 
    println("Saved") 
} 

ответ

12

Нет, это не должно было измениться вообще. Ошибка говорит об этом. В файле AppDelegate.swift нет managedObjectContext. Если вы следуете учебнику, в вашем файле AppDelegate.swift должен быть managedObjectContext. Возможно, вы пропустили этот шаг. Если это не так, вы должны либо добавить его самостоятельно, либо скопировать его.

Если вы хотите, чтобы получить «стандартный» managedObjectContext просто создать новый Swift-проект и проверить Use Core Data флажок во время создания:

New -> File->Project-> Master-Detailview Application-> Use Core Data 

Если вы новичок в CoreData и Свифта, попробуйте обучающую из raywenderlich о Swift и CoreData. Это легко и красиво написано.

+0

Этот учебник объясняет это очень хорошо. Спасибо вам за помощь. – WholemealCat

Смежные вопросы