点击它时,我正试图按下按钮。但是当我尝试将该代码实现到我的xml文件中时,我预先进行了圆形按钮功能。我将xml文件链接到按钮上的android:background命令。
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@color/light_orange" android:state_pressed="true"/>
<item android:drawable="@color/orange"/>
<shape
android:shape="rectangle" android:padding="10dp">
<solid android:color="#FFFF00"/>
<corners
android:bottomRightRadius="10dp"
android:bottomLeftRadius="10dp"
android:topLeftRadius="10dp"
android:topRightRadius="10dp"/>
</shape>
</selector>
答案 0 :(得分:0)
你需要总共三个xmls。 一个与你的正常&#39;圆形,一个圆形,颜色不同,或者你想表明它是按下的。最后一个选择器就像你在你的例子中那样,根据状态你引用其他两个drawables ...
大致类似于:
1- button_not_pressed.xml
<solid android:color="#FFFFFF00"/>
<corners
android:bottomRightRadius="10dp"
android:bottomLeftRadius="10dp"
android:topLeftRadius="10dp"
android:topRightRadius="10dp"/>
</shape>
2- button_pressed
<solid android:color="#AADDDD00"/>
<corners
android:bottomRightRadius="10dp"
android:bottomLeftRadius="10dp"
android:topLeftRadius="10dp"
android:topRightRadius="10dp"/>
</shape>
3- stateful_button.xml
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/button_pressed" android:state_pressed="true"/>
<item android:drawable="@color/button_not_pressed"/>
</selector>
然后你可以简单地给你的按钮画出可绘制的stateful_button作为背景,当你按下它时它会改变颜色......