2016-01-23 28 views
0

我正尝试上传图像和文本到Parse。但是当我点击“上传”按钮时,该应用程序崩溃,出现Thread 1: signal SIGABRT错误。这是我的工作代码: 类ViewControllerUpload:UIViewController中,UIImagePickerControllerDelegate,UINavigationControllerDelegate {将图像上传到分析时出错线程1:信号SIGABRT

@IBOutlet weak var uploadPreviewImage: UIImageView! 
@IBOutlet weak var uploadMessage: UITextField! 
@IBOutlet weak var uploadImageText: UIButton! 
@IBAction func uploadIMageFromSource(sender: AnyObject) { 

    let imagePicker = UIImagePickerController() 
    imagePicker.delegate = self 
    imagePicker.sourceType = UIImagePickerControllerSourceType.PhotoLibrary 
    imagePicker.allowsEditing = true 
    self.presentViewController(imagePicker, animated: true, completion: nil) 

} 

func imagePickerController(picker: UIImagePickerController, didFinishPickingImage image: UIImage!, editingInfo: [NSObject : AnyObject]!) { 
    uploadPreviewImage.image = image 
    self.dismissViewControllerAnimated(true, completion: nil) 

    uploadImageText.titleLabel?.text = "" 
} 

@IBAction func uploadButton(sender: AnyObject) { 

    let imageText = uploadMessage.text 

    if uploadPreviewImage.image == nil { 

     print("Image not uploaded") 

    }else { 

     let posts = PFObject(className: "Messages") 
     posts["Title"] = imageText 
     posts["Name"] = PFUser.currentUser() 
     posts.saveInBackgroundWithBlock({ 
      (success: Bool, error: NSError?) -> Void in 

      if error == nil { 

       let imageData = UIImagePNGRepresentation(self.uploadPreviewImage.image!) 

       let parseImageFile = PFFile(name: "upload.png", data: imageData!) 
       posts["Post"] = parseImageFile 
       posts.saveInBackgroundWithBlock({ 
        (success: Bool, error: NSError?) -> Void in 

        if error == nil { 


         print("data uploaded") 


        }else { 

         print(error) 
        } 


       }) 


      }else { 
       print(error) 

      } 

     }) 


    } 




} 

override func viewDidLoad() { 
    super.viewDidLoad() 
} 
} 

这里同时日志截图:

回答

2

根据错误信息,有一个传递给PFObject的键或值。 您是否检查过PFUser.currentUser()不是零?

尝试使用“NSNull”值或通过使用“guard let”或“if let”确保它不为零。

+0

非常感谢您的帮助! :) –

相关问题