android的圆角矩形按钮button如何实现按下按钮颜色会变
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/clr_normal" android:state_pressed="false"/>
<item android:drawable="@drawable/clr_pressed" android:state_pressed="true"/>
</selector>
这个是让按钮变为圆角矩形的shape.xml文件
<?xml version="1.0" encoding="UTF-8"?>
<shape
xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<!-- 填充的颜色 -->
<solid android:color="#99ff00" />
<!-- 设置按钮的四个角为弧形 -->
<!-- android:radius 弧形的半径 -->
<corners android:radius="20dip" />
<!-- padding:Button里面的文字与Button边界的间隔 -->
</shape>
但是在布局文件中
android:background="@drawable/shape"这里只能调用一个xml文件 应该怎么办? 展开
android 设置圆角按钮后,按下按钮后,还能改变按钮的颜色
<?xml version="1.0" encoding="UTF-8"?>
<item android:state_pressed="false">
<shape android:shape="rectangle" >
<!-- 填充的颜色 -->
<solid android:color="@color/btn_register_normal"></solid>
<!-- 设置按钮的四个角为弧形 -->
<!-- android:radius 弧形的半径 -->
<corners android:radius="15dip" />
<!-- padding:Button里面的文字与Button边界的间隔 -->
<padding android:bottom="2dp" android:left="2dp" android:right="2dp" android:top="2dp" />
</shape>
</item>
<item android:state_pressed="true">
<shape android:shape="rectangle">
<solid android:color="@color/lightblue" />
<corners android:radius="15dip" />
</shape>
</item>
</selector>
2. 圆角有时候需要设置一边是圆角,一边是方形的。<?xml version="1.0" encoding="utf-8"?>
<corners
android:topLeftRadius="5dp"
android:topRightRadius="5dp"
android:bottomLeftRadius="30dp"
android:bottomRightRadius="30dp"/>
<!-- 这是半透明,还可以设置全透明,那就是白色边框的效果了 -->
<solid android:color="#ff065e8d" />
<stroke
android:dashGap="0dp"
android:width="4dp"
android:color="@android:color/white" />
</shape>
可是它只能调用一个@drawable/shape 要么是shape 要么是selector
2014-10-31
但是我又要圆角矩形怎么办?
定义两个圆角矩形的shape,不同的颜色,对应不同的按下状态。
然后定义一个selector,将drawable设置为对应的shape就好。
像我这种情况是没有办法吗?
非要这样用就在onclick时间中用java代码该背景,应该是setBackgroundColor具体哪个方法你看看代码