从Parse.com获取数据到swift

时间:2015-08-18 18:59:00

标签: swift parse-platform

在我的代码中,它从parse接收图像,并在imageView中显示它。这是代码:

http://pastebin.com/kDjAgPRT

如果需要,这是我的上传代码:

func uploadPost(){
        var imageText = self.imageText.text

        if (imageView.image == nil){
            println("No image uploaded")
        }
        else{
            var posts = PFObject(className: "Posts")
            posts["imageText"] = imageText
            posts["uploader"] = PFUser.currentUser()
            posts.saveInBackgroundWithBlock({ (success: Bool, error: NSError?) -> Void in
                if error == nil{
                    //**Success saving, now save image.**//

                    // Create an image data
                    var imageData = UIImagePNGRepresentation(self.imageView.image)
                    // Create a parse file to store in cloud
                    var parseImageFile = PFFile(name: "upload_image2.png", data: imageData)
                    //var parseImageFile = PFFile(data: imageData)
                    posts["imageFile"] = parseImageFile
                    posts.saveInBackgroundWithBlock({ (success: Bool, error: NSError?) -> Void in
                        if error == nil{
                            // Take user home
                            println(success)
                            println("Data uploaded")
                        }
                        else{
                            println(error)
                        }
                    })
                }
                else{
                    println(error)
                }
            })
        }
    }

正如你所看到的,这里是我的Parse内部"帖子": enter image description here

我怎样才能获得" imageText"," uploader"和" createdAt"对于图像?就像Instagram一样。

1 个答案:

答案 0 :(得分:1)

试试这个:

struct Details {
var username:String!
var text:String!
var CreatedAt:NSDate!
var image:UIImage!
init(username:String,text:String,CreatedAt:NSDate,image:UIImage){

    self.username = username
    self.text = text
    self.CreatedAt = CreatedAt
    self.image = image
   }
} 

func QueryImagesFromParse(){

   var arrayOfDetails = [Details]()

var query = PFQuery(className: "Posts")
query.findObjectsInBackgroundWithBlock { (objects:[AnyObject]?, error:NSError?) -> Void in
    if error == nil
    {
        if let newObjects = objects as? [PFObject] {

            for oneobject in newObjects {
                 var text = oneobject["imageText"] as! String
                 var username = oneobject["uploader"] as! String
                  var time = oneobject.createdAt
                  var userImageFile = oneobject["imageFile"] as! PFFile
                userImageFile.getDataInBackgroundWithBlock({ (imageData:NSData?, error:NSError?) -> Void in
                    if error == nil {
                       let newImage = UIImage(data: imageData!)

                         var OneBigObject = Details(username: username, text: text, CreatedAt: time!, image: newImage!)
                          arrayOfDetails.append(OneBigObject)
                         // then reloadData


                    }
                  })

            }

        }
      }
  }
 }

现在可以使用 arrayOfDetails 填充您的单元格...