如何从java更改ImageView的背景?我有一个ImageView,在某个时刻我需要更改它显示的图像(在样式中设置)。我试着这样做:
placeHolder.setImageDrawable(myDrawb);
但看起来旧图像仍然存在并且部分被覆盖但是新图像(在我的情况下具有不同的形状)。
希望你们能帮忙!欢呼声
答案 0 :(得分:15)
您无需触摸XML即可使用src而非背景!
ImageView可以显示两个drawables!一个在后台,另一个在前台。 您似乎总是在更改背景图像。
而不是setBackgroundResource(resId)
使用setImageResource(resId)
来更改前景图片!
答案 1 :(得分:3)
使用以下方法清除背景图像:
placeHolder.setBackgroundResource( 0 );
答案 2 :(得分:2)
或者,您应该在xml中设置Src
的{{1}},而不是设置ImageView
。无论如何,我认为这是“正确”的方式。