安卓按钮选择器 [英] android button selector
问题描述
这是一个按钮选择器,正常时显示为红色,按下时显示为灰色.
This is a button selector such that when normal it appears red, when pressed it appears grey.
我想问一下,如何进一步直接修改代码,以便在按下时文本大小和颜色也可以改变?非常感谢!
I would like to ask how could the code be further directly modified such that when PRESSED the text size and color could also change? Many thanks!
<item android:state_pressed="true" >
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<stroke android:width="2dp" android:color="@color/black" />
<solid android:color="@color/grey"/>
<padding android:left="5dp" android:top="2dp"
android:right="5dp" android:bottom="2dp" />
<corners android:radius="5dp" />
</shape>
</item>
<item>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<stroke android:width="2dp" android:color="@color/black" />
<solid android:color="#FF6699"/>
<padding android:left="5dp" android:top="2dp"
android:right="5dp" android:bottom="2dp" />
<corners android:radius="5dp" />
</shape>
</item>
推荐答案
你只需要在你的布局文件中设置button
的selector
.
You just need to set selector
of button
in your layout file.
<Button
android:id="@+id/button1"
android:background="@drawable/selector_xml_name"
android:layout_width="200dp"
android:layout_height="126dp"
android:text="Hello" />
完成.
编辑
以下是drawable
目录下的button_effect.xml
文件
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/numpad_button_bg_selected" android:state_selected="true"></item>
<item android:drawable="@drawable/numpad_button_bg_pressed" android:state_pressed="true"></item>
<item android:drawable="@drawable/numpad_button_bg_normal"></item>
</selector>
在这里,您可以看到有 3 个可绘制对象,您只需要将这个 button_effect
样式放置到您的 button
中,就像我上面写的那样.您只需要将 selector_xml_name
替换为 button_effect
.
In this, you can see that there are 3 drawables, you just need to place this button_effect
style to your button
, as i wrote above. You just need to replace selector_xml_name
with button_effect
.
这篇关于安卓按钮选择器的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!