С наступающим Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
ILNAR_93
Android
239 / 238 / 50
Регистрация: 19.01.2013
Сообщений: 1,892
Записей в блоге: 3
1

ImageView очистка памяти

25.02.2016, 00:14. Просмотров 987. Ответов 3
Метки нет (Все метки)

Приходит Base64 картинка, далее:

(Это все в фрагменте (Fragment))
Кликните здесь для просмотра всего текста
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
public Bitmap base64ToBitmap(String base64Bitmap){
        if (base64Bitmap==null || base64Bitmap.length()<=0){
            return null;
        }
 
        try {
            byte[] decodedString = Base64.decode(base64Bitmap, Base64.DEFAULT);
            return BitmapFactory.decodeByteArray(decodedString, 0, decodedString.length);
        } catch (Exception ex){
            ex.printStackTrace();
            return null;
        }
    }
 
Phote.setImageBitmap(base64ToBitmap(base64Image));


В моем случае когда закрываю фрагмент мне нужно делать(чтобы освободить память от этих картинок):

А)
Java
1
2
3
if (Phote.getDrawable()!=null){
            ((BitmapDrawable) Phote.getDrawable()).getBitmap().recycle();
        }
B)
Java
1
2
3
if (Phote.getDrawable()!=null){
            Phote.setImageBitmap(null);
        }
С) Ваш вариант - ?
0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.02.2016, 00:14
Ответы с готовыми решениями:

Скопировать картинку из одной ImageView в другую ImageView
В ImageView поставлена картинка методом setImageResource. По нажатию на неё,...

Очистка памяти Bitmap
В фрагменте динамически создаются ImageView, после закрытия фрагмента они все...

Очистка памяти на андроиде без внешней sd
помогите очистить память на андройде леново s860. он не имеет возможности...

ImageView
Добрый день ! Делал проект с нуля, все как обычно, но при поиске id для...

ImageView
Добрый день. Вы не подскажите, как передать изображение из одного ImageView в...

3
CoolMind
422 / 404 / 66
Регистрация: 06.10.2012
Сообщений: 1,734
25.02.2016, 10:07 2
Лучший ответ Сообщение было отмечено ILNAR_93 как решение

Решение

ILNAR_93, почитайте про weak reference.
1
ILNAR_93
Android
239 / 238 / 50
Регистрация: 19.01.2013
Сообщений: 1,892
Записей в блоге: 3
25.02.2016, 10:50  [ТС] 3
CoolMind, Я правильно понимаю что система сама удалит его?) т.е. если нужна память то система удалит
его даже если есть ссылка... Или мне нужно сделать Phote.setImageBitmap(null); и у меня исчезнет strong-ссылка и GC его удалит?)

Добавлено через 5 минут
CoolMind, Если я все правильно там понимаю Классную ты мне вещь предложил посмотреть Не знал
SoftReference - тоже вроде крутая вещь
0
CoolMind
422 / 404 / 66
Регистрация: 06.10.2012
Сообщений: 1,734
25.02.2016, 10:57 4
ILNAR_93, спасибо. Да, мне тоже нравится SoftReference, хоть и не использовал. Насколько знаю, библиотеки кэширования изображений его и используют.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.02.2016, 10:57

ImageView
Подскажите как правильно выводить картинку из URL Вроде нашел какой то пример...

Сохранить ImageView
Подскажите пожалуйста, пытаюсь наложить bitmap на bitmap из imageview и...

Сохранение ImageView
Всем привет, У меня такой вопрос, есть код который сохраняет imageview в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru