/ / LruCache повертає неправильні растрові зображення для зазначеного ключа - андроїд, растрове зображення, android-bitmap, android-lru-cache

LruCache повертає неправильні растрові зображення для зазначеного ключа - Android, растровий, android-bitmap, android-lru-cache

Я дуже новий для розробки Android.

Я вирушаю у проблему з отриманням правильного растрового зображення з мого LruBitmapCache. Я використовую UUID для створення унікального ідентифікатора, я не використовую URL-адресу, оскільки створюю растрове зображення на полотні. (Я копіюю getDrawingCache() з мого представлення до нового растрового зображення (використовуючи копію), а потім зберігати копію в кеш).

Чомусь після того, як я зберігаю растрове зображення, коли я отримую доступ до нього, він закінчується растровим зображенням для іншого ідентифікатора ... це іноді трапляється. Будь-які ідеї?

Я використовую currentIndex, щоб відстежити, яка позиція я єна в cachedKeys Array (я хочу послідовно зберігати і переміщатися по ширині на полотні). Я думаю, що я помилково оновлюю запис у кеш-пам'яті ...

Відповіді:

0 для відповіді № 1

Заступник розробника допоміг. я робив mDrawingView.restartDrawingCache(); неправильно і в неправильному порядку.

Це повинно було бути:

<drawing view>.setDrawingCacheEnabled(true);
Bitmap mmap= <drawing view>.getDrawingCache();
Bitmap copy = mmap.copy(mmap.getConfig(), false);
<drawing view>.setDrawingCacheEnabled(false);

Ура, може, це допоможе комусь :)