Как правильно очистить ImageView?

например, в моей деятельности у меня есть такой код (я пропустить инициализацию переменных):

ImageView iview; //some ImageView
Bitmap b; //some Bitmap
iview.setImageBitmap(b);

вопрос - как правильно очистить ресурсы iview (С или без уничтожения представления)? Будет ли ImageView бесплатно это ресурсы (используемые в собственном коде) после b.recycle()?

Я полагаю, что ImageView не просто освободите ИТ-ресурсы после активности onStop (или onDestroy).

5 ответов


imgview.setImageResource(0);

или

imgview.setImageDrawable(null);

нет вам нужно unbindDrawables, вы можете сделать это, установив iview.setImageDrawable(null);


viewToUse.setImageResource(android.R.color.transparent);
  • Я думаю, что использование setImageResource с цветовым идентификатором даст вам проблемы с сбоями на Android 2.2.1, обязательно проверьте его.

вы можете использовать часто, это работает:

imageView.setImageResource(0);

если ничего не работает, попробуйте установить цвет фона представления в цвет макета.если мой цвет макета Белый, вы можете сделать так:

 edit_countflag.setBackgroundColor(Color.parseColor("#ffffff"));
//then set the image
 edit_countflag.setImageResource(R.drawable.flag_id);