Java Android如何使ImageView变暗

Vla*_*eev 6 java android imageview

正如iOS开发人员告诉我的那样,当有人点击它时,iOS会使图像变暗(我不知道它是多么真实)所以我需要同样的东西.

据我所知,我需要一个通常的selector.xml来制作一个具有不同状态的drawable.我需要的是以简单的方式使图像变暗,可能以某种方式使用xml-drawable,所以我不必使用我没有技能的Photoshop.

有没有办法在xml级别上这样做?

sta*_*ved 6

您可以在java类中使用以下代码:

mView.getBackground().setColorFilter(Color.parseColor(<Color code of your choice>), PorterDuff.Mode.DARKEN);
Run Code Online (Sandbox Code Playgroud)

上面的这一行将视图的颜色更改为您在Color.parseColor()中建议的颜色份额,以及使用PorterDuff.Mode定义它的方式.单击按钮调用上面的代码,检查颜色更改是否生效.


Sub*_*ram 4

您可以在位图后面放置 adark rectangle并设置Bitmap's Opacity而不是尝试 in xml。

  • 如果图像不是矩形,并且周围有一些透明度怎么办?如果我们放置一个黑色矩形,那么图像会得到效果,但透明区域会看起来很奇怪。 (2认同)