准备写一个关于Android开发小Hack 系列文章,希望能帮到一些开发者同学。
第一篇:Android开发Hack1-圆角镂空按钮的样式定义
通过xml文件实现自定义圆角镂空按钮,以及点击效果
<Button android:layout_width="78dp" android:layout_height="32dp"
android:id="@+id/corner_btn"
android:textSize="15sp"
android:textColor="@color/score_point"
android:text="button1"
android:layout_marginRight="17dp"
android:layout_marginLeft="17dp"
android:layout_gravity="center_vertical"
android:background="@drawable/circle_corner_button_selector"
/>
在drawable中创建按钮背景selector器
circle_corner_button_selector.xml
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android/apk/res/android">
<item android:drawable="@drawable/circle_corner_button_pressed" android:state_pressed="true"/>
<item android:drawable="@drawable/circle_corner_button"/>
</selector>
分别定义不同选择操作下的效果
首先:circle_corner_button.xml文件
<?xml version="1.0" encoding="utf-8"?>
<!-- 带圆角 白色背景 黄色色边框 长方体 -->
<layer-list xmlns:android="http://schemas.android/apk/res/android">
<item>
<shape>
<solid android:color="#FFFFFF" />
<corners android:topLeftRadius="5dp" android:topRightRadius="5dp"
android:bottomRightRadius="5dp" android:bottomLeftRadius="5dp" />
<stroke android:width="1dp" android:color="#F58939" />
<padding
android:left="5dp"
android:top="5dp"
android:right="5dp"
android:bottom="5dp"
/>
</shape>
</item>
</layer-list>
和circle_corner_button_pressed.xml文件
<?xml version="1.0" encoding="utf-8"?>
<!-- 带圆角 白色背景 灰色边框 长方体 -->
<layer-list xmlns:android="http://schemas.android/apk/res/android">
<item>
<shape>
<solid android:color="#FFFFFF"/>
<corners android:topLeftRadius="5dp" android:topRightRadius="5dp"
android:bottomRightRadius="5dp" android:bottomLeftRadius="5dp"/>
<stroke android:width="1dp" android:color="#dbdbdb"/>
<padding
android:left="5dp"
android:top="5dp"
android:right="5dp"
android:bottom="5dp"
/>
</shape>
</item>
</layer-list>
最后的按钮效果应该是这样的:
正常情况下:
点击后的样式:
更多推荐
Android开发Hack1-圆角镂空按钮的样式定义
发布评论