2016-04-28 45 views
2

每当我尝试打开一个show segue不同的视图控制器它崩溃与此错误Swift:类AppDelegate中的线程1信号SIGABRT:UIResponder,UIApplicationDelegate,我不不知道为什么。Swift:线程1信号中的SIGABRT类AppDelegate:UIResponder,UIApplicationDelegate

这里的视图控制器,我尝试打开代码:

import UIKit 
import CoreData 

class AddEditVC: UIViewController, NSFetchedResultsControllerDelegate, UIImagePickerControllerDelegate, UINavigationControllerDelegate { 


var item : Item? = nil 

@IBOutlet weak var itemName: UITextField! 
@IBOutlet weak var imageHolder: UIImageView! 

let moc = (UIApplication.sharedApplication().delegate as! AppDelegate).managedObjectContext 

override func viewDidLoad() { 
    super.viewDidLoad() 

    if item != nil { 
     itemName.text = item?.name 
     imageHolder.image = UIImage(data: (item?.image)!) 
    } 


    // Do any additional setup after loading the view. 
} 

override func didReceiveMemoryWarning() { 
    super.didReceiveMemoryWarning() 
    // Dispose of any resources that can be recreated. 
} 

@IBAction func addImage(sender: AnyObject) { 
    let pickerController = UIImagePickerController() 
    pickerController.delegate = self 
    pickerController.sourceType = UIImagePickerControllerSourceType.PhotoLibrary 
    pickerController.allowsEditing = true 

    self.presentViewController(pickerController, animated: true, completion: nil) 

} 


@IBAction func addImageFromCamera(sender: AnyObject) { 
    let pickerController = UIImagePickerController() 
    pickerController.delegate = self 
    pickerController.sourceType = UIImagePickerControllerSourceType.Camera 
    pickerController.allowsEditing = true 

    self.presentViewController(pickerController, animated: true, completion: nil) 
} 

func imagePickerController(picker: UIImagePickerController, didFinishPickingImage image: UIImage, editingInfo: [String : AnyObject]?) { 
    self.dismissViewControllerAnimated(true, completion: nil) 

    self.imageHolder.image = image 
} 

@IBAction func saveTapped(sender: AnyObject) { 

    if item != nil { 
     editItem() 
    } else { 
     createNewItem() 
    } 
} 

func createNewItem() { 

    let entityDescription = NSEntityDescription.entityForName("Item", inManagedObjectContext: moc) 
    let item = Item(entity: entityDescription!, insertIntoManagedObjectContext: moc) 
    item.name = itemName.text 
    item.image = UIImagePNGRepresentation(imageHolder.image!) 

    do { 
     try moc.save() 
    } catch { 
     return 
    } 
} 
func editItem() { 

    item?.name = itemName.text 
    item!.image = UIImagePNGRepresentation(imageHolder.image!) 

    do { 
     try moc.save() 
    } catch { 
     return 
    } 

} 

回答

2

这个错误通常是当一些@IBOutlet@IBAction没有在MainStoryboard分配出现。 请检查前面的小圈子。他们应该用错误的标识为灰色

0

这是不是什么舍甫琴科是说,否则你执行PerformSegueWithIdentifier(,无)。最好添加故事板&原始控制器的截图以及给出明确的答案。

祝你好运!

相关问题