Поток 1: EXC_BAD_ACCESS (код =1, ошибка адреса = 0x70 в appDelegate при нажатии сохранить или нажать назад
Я получаю следующее сообщение об ошибке thread 1: EXC_BAD_ACCESS (code=1, address = 0x70
когда я в своем addCustomerViewController
и либо нажмите сохранить, который в конце кода запускается self.navigationController!.popViewControllerAnimated(true)
или когда я нажимаю обратно в том же addCustomerViewController
, Строка кода, выделенная ошибкой, находится в моем классе AppDelegate, а первая строка выглядит следующим образом
class AppDelegate: UIResponder, UIApplicationDelegate{
Это последнее сообщение, которое я получаю в области отладки. Не уверен, если это связано.
2015-06-17 23:03:03.744 SalesCRM[4930:1409291] CoreData: error: Failed to call designated initializer on NSManagedObject class 'Customer'
Вот функция сохранения. Дайте мне знать, какой другой код вам может понадобиться. Я заблудился относительно того, как это исправить.
@IBAction func save(sender: AnyObject) {
let appDel:AppDelegate = UIApplication.sharedApplication().delegate as! AppDelegate
let context:NSManagedObjectContext = appDel.managedObjectContext
if firstName.text != "" && lastName.text != "" && phoneNumber.text != ""
{
let newUser = NSEntityDescription.insertNewObjectForEntityForName("Customer", inManagedObjectContext: context) as NSManagedObject
newUser.setValue(firstName.text?.lowercaseString, forKey: "firstName")
newUser.setValue(lastName.text?.lowercaseString, forKey: "lastName")
newUser.setValue(phoneNumber.text, forKey: "phoneNumber")
newUser.setValue(email.text, forKey: "email")
newUser.setValue(notes.text, forKey: "notes")
var name = String()
name = lastName.text!
print(name)
var index = advance(name.startIndex, 0)
print(index)
first = String(name[index]).lowercaseString
newUser.setValue(first, forKey: "first")
let todaysDate:NSDate = NSDate()
let dateFormatter:NSDateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "MM-dd-yyyy hh:mm"
let DateInFormat:String = dateFormatter.stringFromDate(todaysDate) + ": created"
newUser.setValue(DateInFormat, forKey: "log")
try! context.save()
let request = NSFetchRequest(entityName: "Customer")
let results = try! context.executeFetchRequest(request)
print(results)
}
else
{
let alert = UIAlertController(title: "Error", message: "Please enter all information", preferredStyle: UIAlertControllerStyle.Alert)
alert.addAction(UIAlertAction(title: "Ok", style: UIAlertActionStyle.Default, handler: nil))
self.presentViewController(alert, animated: true, completion: nil)
}
self.navigationController!.popViewControllerAnimated(true)
}