当前位置: 首页 > 面试题库 >

如何快速转换PFFile到UIImage?

孔瑾瑜
2023-03-14
问题内容

如何快速将PFFile转换为UIImage?

在这段代码中,应用程序正在从解析中获取文件,现在我希望它显示在UIImageView上,但是我得到一个错误…

这是我的代码…

 var ImageArray:UIImage = [UIImage]()
    var textArray:String = [String]()

     var query = PFQuery(className:"ClassName")

            query.findObjectsInBackgroundWithBlock {
                (objects: [AnyObject]?, error: NSError?) -> Void in

                if error == nil {


                    if let objects = objects as? [PFObject] {
                        for object in objects {
     //this works fine                       
self.textArray.append(object.valueForKey("Image")! as! String)



    //this does not work...
                            self.ImageArray.append(object.valueForKey("Image")! as! PFFile)
    //I get an error that says PFFile is not convertible to UIImage. How do i convert it?






                        }
                    }
                } else {
                    // Log details of the failure
                    println("Error: \(error!) \(error!.userInfo!)")
                }

问题答案:

PFFile是任何文件的解析表示。要获取“真实”文件(图像),您需要调用getDataInBackgroundWithBlock。试试吧:

if let userPicture = object.valueForKey("Image")! as! PFFile {
   userPicture.getDataInBackgroundWithBlock({
      (imageData: NSData!, error NSError!) -> Void in
         if (error == nil) {
            let image = UIImage(data:imageData)
            self.ImageArray.append(image)
         }
      })
}


 类似资料:
  • 问题内容: 正如我的问题标题所述,我该如何转换为,然后将其存储到 swift中 。 在Objective-C中,我们可以这样做: 但是有人能告诉我如何迅速做到这一点吗? 提前致谢。 问题答案: 尝试这样的事情:

  • 问题内容: 我想转换为 下面尝试的方法,但执行效果不佳(返回nil)。 如何转换此日期格式? 问题答案: Xcode 8•Swift 3 您需要转义“ T”并使用适当的时区符号。请注意,这取决于您的日期字符串代表带Z 还是不带+00:00 的UTC(距格林尼治标准时间为零秒)时区: 如果您需要一些参考,可以使用以下方法:

  • 问题内容: 这是我的代码,用于将字节数据转换为浮点数。我尝试了本网站给出的所有答案。我正在获取此“ <44fa0000>”字节数据的指数值 谢谢 问题答案: 是二进制浮点数的 big-endian 内存表示形式。要从数据中获取数字,您必须先将其读入,从big-endian转换为主机字节序,然后将结果转换为a 。 在 Swift 2 中 例: 在 Swift 3中, 您可以使用代替,而 可以用 初始

  • 问题内容: 我知道如何在Java中执行此操作,但是找不到Java的ByteBuffer的快速等效项,因此也找不到它的.putDouble(double value)方法。 基本上,我正在寻找这样的功能: 问题答案: typealias Byte = UInt8 但是结果与您的期望相反(由于字节顺序): 添加: 对于Xcode8 / Swift3.0: 对于Xcode8.1 / Swift3.0.1

  • 问题内容: 我有此表达式返回一个: 我希望能够在此if语句中使用数字: 问题是控制台给了我这个 问题是无法与进行比较。我想投到一个。我努力了: 这些都导致 如何转换值或在if语句中使用它? 问题答案: 做两件事,一是消除当前方法的负面结果,二是应根据结果正确创建一个Int。

  • 更新。麻烦在于:“By drivers使用SQL locator(Clob)实现Clob对象,这意味着Clob对象包含一个指向SQL Clob数据的逻辑指针,而不是数据本身。”如何将CLOB值内联(当我使用next()时)? 附言。因为英语不好。