【问题标题】:Android: Change src alpha and keep background (blend src with color)Android:更改 src alpha 并保留背景(将 src 与颜色混合)
【发布时间】:2013-01-05 18:01:39
【问题描述】:

我一直在寻找这个,但真的想不出任何干净的方法来做到这一点。

我正在开发一个带有一些按钮的应用程序,主要是这样定义的:

<ImageButton
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:background="#000000"
    android:contentDescription="@null"
    android:src="@drawable/btn1" />

有一个onTouchListener 可以用setAlpha(0.5f) 更改按钮的alpha,但它也会更改背景alpha,这不是我需要的。我想让它看起来更暗,而不是透明。

我已经看到了这个问题:Android Graphics: Changing the alpha of just an image (not the background),并且该解决方案确实有效,但是为我的应用程序中的每个按钮创建一个 FrameLayout 听起来并不好。

鉴于背景是纯色,我认为会有一个更简单的解决方案,例如颜色混合或类似的东西,但真的在任何地方都找不到。

解决方案

刚刚发现这个帖子:http://tech.chitgoks.com/2011/04/17/android-change-imagebutton-tint-to-simulate-button-pressed/

解决方法很简单:

button.setColorFilter(Color.argb(150,0,0,0));

【问题讨论】:

    标签: android imagebutton alpha


    【解决方案1】:

    您可以使用getDrawable() 方法获取可绘制的图像并尝试更改其alpha。

    【讨论】:

    • 谢谢,它确实成功了。但是如果我的按钮是圆形的呢?有没有什么办法可以让它们变暗而不后面有一个大的黑色方块?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-07-22
    • 2015-09-15
    • 1970-01-01
    • 1970-01-01
    • 2020-07-28
    • 2018-12-12
    • 2019-08-30
    相关资源
    最近更新 更多