Haneke ライブラリを使用して、画像のダウンロード、読み込み、キャッシュを行っています。これはうまく機能しますが、スクロールが速すぎる場合、正しくない画像が読み込まれたり、画像がまったく読み込まれない場合があります。
バックグラウンドでダウンロードできるよりも速くスクロールしているため、キュー内の次の画像が間違ったセルに読み込まれる可能性があります。
これは、ネットワーク経由でキャッシュから画像をリクエストするためのコードです。
let fetcher_net = NetworkFetcher<UIImage>(URL: finished_URL!)
let fetcher_disk = DiskFetcher<UIImage>(path: check_apost)
cache.fetch(fetcher: fetcher_disk).onSuccess { image in
//cell.card_imageIV.hnk_fetcher.cancelFetch()
//print("Image Cache found")
cell.card_imageIV.image = image
}.onFailure{ image in
//print("Unavailable to find image cache, fetching from network")
cache.fetch(fetcher: fetcher_net).onSuccess { image in
//print("Network image request SUCCESS")
cell.card_imageIV.image = image
}
}
また、カスタム セルの Swift ファイルでは、セルが画面から外れているときに要求を停止する次のメソッドに入れることができるものはありますか?
override func prepareForReuse() {
super.prepareForReuse()
// Increment the generation when the cell is recycled
//card_imageIV.hnk_cancelSetImage()
//card_imageIV.image = nil
}
私は何週間もこれを理解しようとしてきました。この問題を解決するために使用するより良いライブラリを誰かが持っている場合は、お知らせください。