2016-09-23 8 views
1

私はプロジェクトでUniversal Image Loaderを使用しています。イメージがサーバーからロードされた場合は特定のアクションを実行し、メモリまたはディスクキャッシュからロードされた場合は何もしません。UniversalLoader上でイメージがどこからロードされたかを知る方法はありますか?

私がこれを行うために見つけた唯一の方法は、メモリとディスクキャッシュに事前にpingしてイメージが含まれているかどうかを確認することです。それがない場合には、画像を表示する通常の流れがこのチェックを繰り返すので、私は努力を重ねています。

これを行うより良い方法はありますか?コードでは、異なる内部メソッドに渡される変数はLoadedFromですが、パブリックAPIでは返されません。

答えて

1

あなたは画像キャッシュされたかどうかをチェックするために、このコードを使用することができます:画像をメモリにキャッシュされているが、それはディスク上にキャッシュされたなら、私に教えてくれません場合だけ教えてくれます

public static boolean checkCacheImageUri(String uri) { 
     List<String> findCacheKeysForImageUriThumbnail = MemoryCacheUtils.findCacheKeysForImageUri(
       uri, ImageLoader.getInstance().getMemoryCache()); 
     if (findCacheKeysForImageUriThumbnail != null 
       && !findCacheKeysForImageUriThumbnail.isEmpty()) { 
      return true; 
     } 
     return false; 
    } 
+0
関連する問題