2017年3月10日 11:52 AM
上篇博文中讲述了如何自定义自己的按钮,但思来考去总感觉有点丑,而且可拓展性也不高,什么意思呢,就是说,上篇介绍的按钮写法无法同时实现按钮的圆角,渐变色和点击变色,于是乎对按钮的shape.xml文件进行改造,只需要一个xml文件便可以实现所有提到的样式,而且还可以后期添加样式,好了废话不多说,下面放代码
btn_style.xml
<?xml version="1.0" encoding="utf-8"?>
<!--建立一个selector,用于判断按钮的状态-->
<selector xmlns:android="http://schemas.android.com/apk/res/android" >
<!--建立两个item分别判断按钮的状态-->
<item android:state_pressed="true">
<!--这里可以通过shape标签实现按钮的形状自定义-->
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<corners android:radius="8dip"/>
<!--这里可以通过gradient标签实现渐变色自定义-->
<gradient
android:startColor="#87CEFA"
android:endColor="#436EEE"
android:angle="90" />
</shape>
</item>
<!--以下为按钮的DLE状态,与pressed相同-->
<item android:state_pressed="false">
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<gradient
android:startColor="#8DEEEE"
android:endColor="#4876FF"
android:angle="90" />
<corners android:radius="8dip"/>
</shape>
</item>
</selector>
写到这里就说完了,接下来只需要在按钮上的background属性下应用这个样式就可以了,是不是感觉比上篇博文上写的要简洁一些呢,而且还不用去花时间新建其他的xml文件
下面放上效果图(这个是在上课的时候截的图,点击 按钮颜色会变的稍微暗一些)
PS:这篇博文是对上篇博文的补充,所以短一些