Swift - Parse Проверьте, кэшируется ли PFFile
Учитывая, что я использую PFImageViews с включенным кэшированием, я хотел бы знать, есть ли способ определить, было ли уже загружено изображение или нет.
В общем, я хочу сказать:
if imageAlreadyDownloaded {
...
}
else {
...
}
Является ли это возможным?
2 ответа
Итак, я наконец-то нашел решение своей проблемы! Каждый файл PFFile имеет логическое свойство с именем "isDataAvailable".
С небольшим количеством кода у нас может быть следующее решение:
let imageFile = file as? PFFile
if imageFile.isDataAvailable {
...
}
else {
...
}
И сделано!;-)
Я думаю, вам придется развернуть свое собственное решение, используя PFImageView и метод loadInBackground, который имеет обработчик завершения.
Что-то вроде:
// Instance property on your UIViewController
private var imageAlreadyDownloaded = false
// Somewhere else in your UIViewController...
imageView.loadInBackground() {
[unowned self] (image, error) in
guard error == nil else {
return
}
self.imageAlreadyDownloaded = true
}