サーバーから取得した画像をキャッシュするために LRUCache を使用しています。RecyclerView からリクエストしていますが、すべての画像がキャッシュされるまで、LRUCache インスタンスはサイズ 0 を返します。
コードはこちら
public void buildCache() {
for (Feed feed : mFeeds) {
List<User> users = new ArrayList<>();
users.add(feed.getAuthor());
try {
if (feed.getPostType() == Feed.PostType.Collab) {
for (User receiver : feed.getUsers())
users.add(receiver);
getImages(users);
Log.d(LOG_TAG, "Cache size: " + imagesLruCache.size());
} else if (feed.getPostType() == Feed.PostType.Search){
String receiverUsername = feed.getReceiver().getUsername();
getImages(users);
}
} catch (InterruptedException e) {
e.printStackTrace();
} catch (ExecutionException e) {
e.printStackTrace();
}
}
mCacheBuildingInterface.OnCacheBuilt();
dataSetChanged();
}
問題を解決するにはどうすればよいですか?
みんなにthx