IMessage динамически загружать GIF, посмотреть высоту вопроса
Я сталкиваюсь с той же проблемой.Как работает мое приложение: вызов API (если последняя разница во времени составляет 5 часов) -> Загрузить -> сохранить в sqlite -> вынуть из sqlite -> дисплей. снова
Ну я видел похожий пост ----> ссылка
Но дело в том, что когда я не вызываю API (т. Е. Временной интервал составляет менее 5 часов), когда изображения поступают из sqlite и из директории документа, это хорошо.
Я попытался вызвать функцию внутри себя. Также просмотреть didlload и viewAppear. Ничего не получалось. Теперь я думаю о том, чтобы автоматически отправлять приложение в appdelegate или перезапускать приложение. Я сбит с толку.
вот мой код
if interval > 18000 // 3 //1200
{
self.viewModel.getAllEmojiesAndCategories(baseUrl: self.baseUrl!) { (result) in
print(result)
if Int(result.value(forKey: "error_code") as! String) == 404
{
let when = DispatchTime.now() + 0.05
DispatchQueue.main.asyncAfter(deadline: when)
{
self.showAllGifs() //2
}
}
else
{
DispatchQueue.main.async
{
Model.setSettingTable(version: 1.0, timestamp: result.value(forKey: "timestamp") as! String)
// self.lblLoading.isHidden = true
// self.imgLoading.isHidden = true
self.progressView.isHidden = true
self.noDataToDownload = true
// self.showAllGifs() //3
//
DispatchQueue.main.asyncAfter(deadline: .now() + 5.0, execute:
{
// self.willBecomeActive(with: MSConversation.init())
// self.loadGifFromServer()
// })
// self.loadGifFromServer()
// self.viewDidLoad()
}
}
}
}
else
{
let when = DispatchTime.now() + 0.05
DispatchQueue.main.asyncAfter(deadline: when)
{
// self.lblLoading.isHidden = true
// self.imgLoading.isHidden = true
self.progressView.isHidden = true
self.noDataToDownload = true
self.showAllGifs() // 4
}
}
Дисплей в порядке, когда приложение собирается еще раз или я перезапускаю приложение. Как получить этот сценарий?