[SWIFT] SDWebImage: Comment vider le cache pour une UIImageView particulière

introduction

SDWebImage est largement utilisé comme bibliothèque de cache d'images. Je pense qu'il existe de nombreuses scènes qui utilisent principalement les méthodes suivantes comme méthodes pour vider le cache.

SDImageCache.sharedImageCache().clearMemory()
SDImageCache.sharedImageCache().clearDisk()

Mais si vous souhaitez vider le cache pour une UIImageView particulière Effacer tous les caches un par un coûte cher, J'ai essayé de savoir comment vider le cache d'une UIImageView spécifique.

Vider le cache pour une UIImageView particulière

Ceci peut être réalisé en utilisant la méthode suivante.

SDImageCache.shared.removeImageFromDisk(forKey: String)
SDImageCache.shared.removeImageFromDisk(forKey: String)

L'argument forKey (cacheKey) semble être l'URL définie dans UIImageView. ▼ Document officiel

The cache key is an application unique identifier for the image to cache. It is generally the absolute URL of the image.

Je suis un peu inquiet pour généralement, mais lol (probablement parce que vous pouvez spécifier la clé lors de la mise en cache?) J'ai pu vider le cache en implémentant comme suit.

if let cacheKey = uiimageView.sd_imageURL?.absoluteString {
    SDImageCache.shared.removeImageFromDisk(forKey: cacheKey)
    SDImageCache.shared.removeImageFromDisk(forKey: cacheKey)
}

Recommended Posts

SDWebImage: Comment vider le cache pour une UIImageView particulière
Comment faire un MOD pour Slay the Spire
Comment vérifier le contenu de la chaîne de caractères java de longueur fixe
Comment créer un référentiel Maven pour 2020
Comment créer des pages pour le tableau "kaminari"
[Pour les débutants] Comment implémenter la fonction de suppression
Comment créer un JRE léger pour la distribution
[Java] (pour MacOS) Méthode de définition du chemin de classe
Comment exécuter l'application SpringBoot en tant que service
Comment utiliser un tableau pour la clé TreeMap
Comment écrire un test unitaire pour Spring Boot 2
[Spring Boot] Comment créer un projet (pour les débutants)
Comment faire un cache sans trop réfléchir
Comment étudier le kotlin pour la première fois ~ Partie 2 ~
Comment étudier le kotlin pour la première fois ~ Partie 1 ~
Comment faire une capture d'écran avec l'émulateur Android Studio
Comment créer une image de conteneur légère pour les applications Java
Comment créer un formulaire pour sélectionner une date dans le calendrier
Comment laisser un commentaire
Comment créer une partie d'espace réservé à utiliser dans la clause IN
[Ruby] Comment récupérer le contenu du double hachage
Comment générer des valeurs de tableau sans utiliser d'instruction for
Comment ajouter les mêmes index dans un tableau imbriqué
Minecraft Modding [1.12] Comment attacher un rendu spécial pour Item
Un mémorandum pour atteindre le lieu qui démange pour Java Gold
[jsoup] Comment obtenir la totalité de la documentation
Comment insérer une vidéo
Comment créer une méthode
Comment créer et lancer un Dockerfile pour Payara Micro
Comment obtenir le dernier ID de diffusion en direct pour une chaîne sans utiliser l'API de données YouTube
[Java] Comment rechercher des valeurs dans un tableau (ou une liste) avec la méthode contains
Comment gérer le type auquel j'ai pensé en écrivant un programme Java pendant 2 ans
Mécanisme de conversion vers une langue que le navigateur peut reconnaître
Comment créer un fichier jar et un fichier war à l'aide de la commande jar
Comment créer un hinadan pour un projet Spring Boot à l'aide de SPRING INITIALIZR
Comment obtenir le contenu de la carte à l'aide du mémorandum d'instructions
[Rails] Comment changer le titre de la page du navigateur pour chaque page
Comment exécuter l'exemple Kotlin Coroutine à partir de la ligne de commande
Comment stocker les informations saisies dans la zone de texte dans une variable de la méthode
Comment identifier le chemin sur lequel il est facile de se tromper
[chown] Comment changer le propriétaire d'un fichier ou d'un répertoire
[Pour les débutants] Comment obtenir le nom de la ligne de chemin de fer différée Ruby
kotlin & Java: Comment masquer la barre d'outils uniquement pour des fragments spécifiques
Comment faire un diamant révolutionnaire en utilisant Java pour déclaration wwww
Comment utiliser la méthode link_to
Comment utiliser la méthode include?
Comment utiliser la méthode form_with
Comment spécifier la validation pour time_field
Comment installer JMeter pour Mac
Comment trouver l'angle moyen
Comment créer un conteneur Java
Comment utiliser la classe wrapper
Comment signer Minecraft MOD
Comment créer un pilote JDBC