如何使用自定义背景图像制作按钮在Android中显示点击动画
如何使按钮显示它在Android中使用自定义背景图像点击(通过设置它下降/更改)按钮。 我不想包含更多图像,并将不同的图像设置为不同的状态,如google hello视图示例中所示。 谢谢。
使用ColorFilter方法只能处理一个图像文件。 但是,ColorFilter希望能够使用ImageViews而不是Buttons,因此您必须将按钮转换为ImageView。 如果你使用图片作为你的按钮,这并不是一个问题,但是如果你有文本,它会更加恼人......无论如何,假设你找到了解决文本问题的方法,下面是要使用的代码:
ImageView button = (ImageView) findViewById(R.id.button);
button.setColorFilter(0xFFFF0000, PorterDuff.Mode.MULTIPLY);
这会在按钮上应用红色覆盖(颜色代码是完全不透明的红色的十六进制代码 - 前两位数字是透明的,然后是RR GG BB)。
通过将sdkfolder / platforms /(android version / data / res / drawable)中的btn_default_normal.9.png文件复制到您自己的项目中,您可以使ImageView看起来像普通按钮。然后在ImageView中使用android:background="@drawable/btn_normal_default"
和android:src="..."
在按钮内设置图像。
你必须使用两个图像来做到这一点。
然后在可绘制文件夹中创建一个xml资源
<?xml version="1.0" encoding="UTF-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="false"
android:drawable="@drawable/button_normal" />
<item android:state_pressed="true"
android:drawable="@drawable/button_pressed" />
</selector>
然后,将此文件设置为imageview的背景。 这里我们使用imageview作为按钮。 不要忘记在可绘制文件夹中包含这两个按钮。 而已。
您可以创建一个简单的透明黑色图像,并创建一个可绘制的级别列表,通过它可以将透明图像放置在实际图像上。 这产生了推倒的效果。 您可以进一步将它用作如下所示的onclick图像。
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true">
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/image">
</item>
<item android:drawable="@drawable/transparent_image">
</item>
</layer-list>
</item>
<item android:drawable="@drawable/image"></item>
</selector>
链接地址: http://www.djcxy.com/p/96749.html
上一篇: How to make button with custom background image show click animation in Android