2013-08-05 3 views
2

Я прошел через много потоков, но я не смог получить ответ.Очистить изображение в Imageview

Я устанавливаю изображение в ImageView программно, как

imageview.setBackgroundResource(R.Drawable.image); 

если я установить изображение, как указано выше, будет изображение очищен, если я дать

imageview.setImageDrawable(null); 

что это означало imageview.setBackgroundDrawable(null)?

В чем разница между

imageview.setImageDrawable(null); 

и

imageview.setImageBitmap(null); 

и

imageview.setBackgroundDrawable(null); 

ответ

11

setBackgroundDrawable() устарела. Вместо этого вы должны использовать setBackground.

В основном разница - это параметр. В setImageBitmap() вам необходимо передать объект Bitmap. В setImageDrawable() вы должны передать объект Drawable. setBackground просто изменит фон изображения.

Изображение может иметь фон и изображение. Если вы определяете фон и хотите очистить изображение, вы должны использовать setBackground(null).

+0

Это истинный ответ –

+2

setBackgroundResource (0) - лучший вариант. из документации. setBackground Требовать ApI 16 или выше .. см. здесь http://developer.android.com/reference/android/view/View.html#setBackgroundResource%28int%29 – Nepster

0

setImageBitmap(Bitmap bm): Устанавливает Bitmap как содержание этого ImageView

setImageDrawable(Drawable drawable): Устанавливает растяжимой как содержание этого ImageView

+0

Я прошу разницу установить его в null. Я хочу очистить изображение. – VIGNESH

+0

imageview.setImageDrawable (null); работал на меня – KOTIOS

2

ли вы опробованы:

imageview.setImageResource(android.R.color.transparent); 
+0

Как это получить в xml? – santafebound

1

Я имел та же проблема. Здесь

imageview.setImageDrawable(null); 

очистит фон с ImageView,

imageview.setImageBitmap(null); 

очистит ImageBitmap от ImageView и

imageview.setBackgroundResource(R.Drawable.image); 

установит изображений для вашего пути, например, ваш путь (R.Drawable.image)

1

Есть много способов, чтобы надуть & ясного ImageView

  1. Если вы раздули использование,

    imageView.setImageDrawable (ContextCompat.getDrawable (контекст, R.drawable.хуг));

    тогда ясно, используя,

    imageView.setImageDrawable (нуль);

  2. Если вы раздули использованием,

    imageView.setBackgroundResource (R.drawable.xyz);

    тогда ясно, используя,

    imageView.setBackground (нуль);

Так в основном, если вы завышать ImageDrawable, затем удалить ImageDrawable. Если вы надуваете backgroung, то вы удаляете фон. Аналогично для ImageBitmap.

Смежные вопросы