我想知道当您使用getData()
或任何背景等价物时,Parse如何加载PFFile
数据。这是我的情况:PFFile加载行为
我有一个User
类与密钥profilePic
,这是一个PFFile
,在这种情况下,一个.JPG图像。当我加载我的用户时,我想将他的个人资料图片显示为UIImageView
。下面的代码我使用:
let imageFile = user["profilePic"] as PFFile
let imageData = imageFile.getData()
let image = UIImage(data: imageData)
我然后继续设置image
为UIImageView
在UITableViewCell
。
正如你所看到的,我使用的是getData()
而不是,我会在完成块中设置image
。
事情是,我得到一个警告,我阻止了主线程,但是当我快速滚动我的表时,我发现绝对没有任何延迟,因此经常触发getData()
。我还看到状态栏中没有网络指示符,这表明它正在从解析中反复拉取图像文件。
总之,我的问题是这样的:在加载用户时,如何解析加载我的图像文件?它获取所有用户信息并将其存储在缓存中时是否下载图像文件?或者它只是加载文件的引用,然后在我致电getData()
时下载文件?
在此先感谢。
谢谢你的回答。如果我多次在同一个文件上调用'getData()',它会每次从服务器下载文件,还是从缓存中加载? – 2014-10-09 18:05:15
它从缓存中加载它。我更新了我的答案。 – Dehli 2014-10-09 18:07:44
谢谢!我接受了你的答案。 – 2014-10-09 20:48:01