у меня есть HashMap, как это
HashMap<String, BitmapDrawable> bitmapDrawables = new HashMap<String, BitmapDrawable>();
Теперь у меня есть метод, который вернет рисуемый объект:
public static BitmapDrawable getDrawable(String fileName, Context context,Bitmap bitmap) {
BitmapDrawable drawable = bitmapDrawables.get(fileName);
if (drawable == null) {
drawable = convertBitmapToDrawable(bitmap, context);// will convert the bitmap to drawable
bitmapDrawables.put(fileName, drawable);
}
return drawable;
}
Он работает нормально, но иногда он не возвращает правильный рисунок, например, у меня есть 2 действия A и B, в действии A у меня есть кнопка с набором рисунков, теперь я перехожу от A -> B, а затем возвращаюсь к A в этом время, когда рисуемый объект не загружается, но когда я касаюсь этой кнопки, он становится видимым.
Почему это происходит? Я удалил haspMap и проверил, правильно ли он загружается, и когда я перемещаюсь из A-> B и возвращаюсь в A, но если я не использую Hashmap, на экранах появляется задержка.
я использую getDrawable() следующим образом:
button.setBackgroundDrawable(getDrawable(name,context,bitmap);