从imageview Android中删除图像

时间:2011-07-10 20:26:14

标签: java android bitmap imageview

我正在尝试制作一个包含图片库的ImageView。通过触摸用户请求加载下一个图像。如果在服务器中找不到下一个图像或需要时间加载,我需要将旧图像清空。

setVisibility(View.GONE)setVisibility(View.INVISIBLE)对我不起作用,因为当隐身/不见时我停止onTouch()检测(并且用户被锁定到当前图像)。

如何让ImageView加载空位图或清除(删除)当前位图?

4 个答案:

答案 0 :(得分:358)

我总是使用

imageView.setImageDrawable(null);

答案 1 :(得分:5)

尝试:

imageView.setImageResource(0);

这会将图像视图设置为不使用资源。

答案 2 :(得分:5)

当然imageView.setImageResource(0)可以正常工作。它对我来说从未失败过,而且我已多次使用过它。

setImageResource通常传递引用R.drawable,(图片的引用),它存储为int,但在R.java类中显示为十六进制值,0xf2fs ...所以假设这个引用存在它会显示一张图片,如果你以后传递相同的imageview一个不存在的参考,旧的图片将不再显示。因此,如果您传递0,或5或与您的R.java类中引用的资源不匹配的int,它将从imageView的src中完全删除该图片。因此,如果您将0传递给imageView的旧引用。

答案 3 :(得分:5)

从我注意到的,"工作"清除图像时是否采用某种方法取决于用于填充ImageView的方法。

因此,如果您设置img.setImageBitmap(bmp),那么要清除您应使用img.setImageBitmap(null)。 当您img.setImageResource(resId)然后清除时,您应该使用img.setImageResouce(0)。 等