【问题标题】:Clear Image in the Imageview在 Imageview 中清除图像
【发布时间】:2013-08-06 00:21:43
【问题描述】:

我经历了很多线程,但我还没有得到答案。

我正在以编程方式将图像设置为 imageView

imageview.setBackgroundResource(R.Drawable.image);

如果我像上面那样设置图像,如果我给,图像会被清除

imageview.setImageDrawable(null);

imageview.setBackgroundDrawable(null) 是什么意思?

有什么区别

imageview.setImageDrawable(null);

imageview.setImageBitmap(null);

imageview.setBackgroundDrawable(null);

【问题讨论】:

    标签: android bitmap imageview drawable


    【解决方案1】:

    setBackgroundDrawable() 已弃用。你应该改用setBackground

    基本上区别在于参数。在setImageBitmap() 中,您必须传递一个位图对象。在setImageDrawable() 中,您必须传递一个Drawable 对象。 setBackground 只是改变 imageview 的背景。

    imageview 可以有背景和图像内容。如果你正在定义背景并想清除 imageview,你应该使用setBackground(null)

    【讨论】:

    【解决方案2】:

    你试过了吗:

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

    【讨论】:

    • 我如何在 xml 中得到这个?
    【解决方案3】:

    我有同样的问题。这里,

    imageview.setImageDrawable(null);
    

    将清除ImageView的背景,

    imageview.setImageBitmap(null);
    

    将从ImageView 中清除 ImageBitmap,并且

    imageview.setBackgroundResource(R.Drawable.image);
    

    将为您的路径设置图像,例如您的路径 (R.Drawable.image)

    【讨论】:

      【解决方案4】:

      有很多方法可以膨胀和清除 ImageView

      1. 如果你使用过充气,

        imageView.setImageDrawable(ContextCompat.getDrawable(context,R.drawable.xyz));

        然后清除使用,

        imageView.setImageDrawable(null);

      2. 如果你使用过充气,

        imageView.setBackgroundResource(R.drawable.xyz);

        然后清除使用,

        imageView.setBackground(null);

      所以基本上如果你膨胀 ImageDrawable,然后你删除 ImageDrawable。 如果你膨胀背景,那么你就会删除背景。 ImageBitmap 也是如此。

      【讨论】:

        【解决方案5】:

        setImageBitmap(Bitmap bm) : 设置 Bitmap 作为 this 的内容 ImageView

        setImageDrawable(Drawable drawable): 将可绘制对象设置为 这个ImageView的内容

        【讨论】:

        • 我在问将其设置为 null 的区别。我想清除图像。
        猜你喜欢
        • 2016-07-23
        • 1970-01-01
        • 2011-02-20
        • 2016-08-29
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多