我有一个带有透明度的图像源的图像按钮,但图像按钮的背景颜色是典型的灰色按钮颜色.
我想设置背景= @null,这很好.
但是,当我按下此图像按钮时,我看不到表示我按下按钮的颜色.
如果我在按下按钮时删除background = @null,请更改用户知道您按下的颜色.
我读到你可以创建一个带有3个图像的xml,指定按下按钮的时间,此正常情况以及何时聚焦.但我认为存在一种更容易的方法.
Luk*_*rog 13
根据上述答案,使用选择器drawable(对于背景,而不是null)将默认状态设置为透明颜色:
*selector_with_transparency:*
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:state_pressed="true" android:drawable="@drawable/pressed" />
<item android:drawable="@drawable/transparent" />
</selector>
Run Code Online (Sandbox Code Playgroud)
按:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
<solid android:color="#0077cc" />
</shape>
Run Code Online (Sandbox Code Playgroud)
透明:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
<solid android:color="#00000000"/>
</shape>
Run Code Online (Sandbox Code Playgroud)
然后为ImageButton:
background = "@drawable/selector_with_transparency"
Run Code Online (Sandbox Code Playgroud)