1、设置背景渐变效果,在drawable目录下建buttonshape.xml文件,

内容为:

<?xml version="1.0" encoding="utf-8"?> 
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">
    <gradient android:startColor="#01DFD7" android:endColor="#81F7F3" 
            android:angle="270"/> 
    <corners 
         android:bottomRightRadius="10dip" 
         android:bottomLeftRadius="1dip" 
         android:topLeftRadius="18dip" 
         android:topRightRadius="10dip"/> 
</shape>

这里startColor是开始颜色,endColor是渐变结束颜色,默认是从上往下渐变,可以使用android:centerY调节,android:angle="270"设置角度。

corners设置边角的圆滑度。

设置点中的效果,在drawable目录下建buttonshape_down.xml文件,内容如下:

<?xml version="1.0" encoding="utf-8"?> 
<shape xmlns:android="http://schemas.android.com/apk/res/android" 
    android:shape="rectangle"> 
    <gradient android:startColor="#F5F510" android:endColor="#F5F5B0" 
        android:angle="270" /> 
    <corners android:bottomRightRadius="10dip" 
        android:bottomLeftRadius="1dip" android:topLeftRadius="18dip" 
        android:topRightRadius="10dip" /> 
</shape>

在res目录下新建文件夹xml,然后在xml目录下,新建selectshape.xml文件,内容如下:

<?xml version="1.0" encoding="utf-8"?> 
<selector xmlns:android="http://schemas.android.com/apk/res/android"
    <item 
        android:state_pressed="false" 
        android:drawable="@drawable/buttonshape" /> 
    <item 
        android:state_pressed="true" 
        android:drawable="@drawable/buttonshape_down" /> 
    <item 
        android:drawable="@drawable/buttonshape" android:state_window_focused="false"/> 是否获得焦点状态
</selector>

设置了图片的触发状态,你可以设置 state_pressed,state_checked,state_pressed,state_selected,state_focused,state_enabled 等几个状态

state_pressed设置按钮状态,在main.xml文件中设置Button的属性:

<Button android:id="@+id/button_reimbursementrecords" 
            android:text="报销记录" android:layout_width="280px" 
            android:layout_height="80px" android:textSize="30px" 
            android:background="@xml/selcetshape" />

使用background设置按钮的背景色。

点击button,button背景图片变化的更多相关文章

  1. WPF之路二: button添加背景图片点击后图片闪烁问题

    在为button添加背景图片的时候,点击后发现图片闪烁,我们仔细观察,其实Button不仅仅只是在点击后会闪烁,在其通过点击或按Tab键获得焦点后都会闪烁,而通过点击其他按钮或通过按Tab键让Butt ...

  2. WPF Button的背景图片设置

    这个问题很简单,但是对于从winfrom转过来的来讲,在做事的时候就会被绕进去,言归正传,如何设置一个bUtton的背景图片?如何去掉让人烦的默认选中时的灰色背景?请看如下的描述.问题的来源和解决都在 ...

  3. 【转】UGUI之用脚本动态的改变Button的背景图片 和 颜色

    http://blog.csdn.net/u014771617/article/details/45102701 public Button button;void Start(){ColorBloc ...

  4. C#(winform)为button添加背景图片,并去掉各种边框

    1.既然是添加背景图片 所以这里应该使用 Button.BackgroudImage = "" ;来设置图片 而不应该使用  Button.Image = "" ...

  5. C#(winform)为button添加背景图片

    1.既然是添加背景图片 所以这里应该使用 Button.BackgroudImage = "" ;来设置图片 而不应该使用  Button.Image = "" ...

  6. 【android开发笔记】为Button的背景图片添加边框式样式效果

    现在做的项目遇到一个问题,设计给过来的图片只有一种状态,但是实现的需求是要求有两个状态,另一种选状态为图片背景加边框.如图: 刚开使用使用ImageView ,ImageViewButton 效果不是 ...

  7. WPF学习笔记——为BUTTON添加背景图片

    首先要肯定,代码: <Style x:Key="UserItemButton" TargetType="Button"> <Setter Pr ...

  8. ios UIButton 选中后背景图片变化发灰问题

    UIButton的类型如果选择了System类型,那么设置背景图后,点击的效果是图片发灰,而不是默认的那种图片变淡黑色效果,需要用customer类型就好了.

  9. js实现点击切换checkbox背景图片

    在制作网页的过程中,经常需要实现点击切换背景图片的效果,本文关注的是表单中checkbox背景图片切换的实现.如图,在输入用户名和密码后,用户需要选择是否记住密码 图片背景为白色表示未勾选状态 ,背景 ...

随机推荐

  1. 泛型方法前为什么要加<T>

    package com.test05.myTest; class Fruit { public String toString() { return "Fruit"; } } cl ...

  2. HTML——图片自动轮换和手动轮换

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  3. JEECG常见问题大全征集

    大家还有什么问题.请跟帖,谢谢支持. .  JEECG常见问题大全征集 1. jeecg没有数据库脚本问题   jeecg不须要数据库脚本,在数据库创建好数据库.项目配置好数据源链接.会自己主动建表. ...

  4. redis live 如何安装

    在 windows 环境下安装 redislive   这是一篇在 windows 环境下安装 redislive 的教程! 项目地址:https://github.com/nkrode/RedisL ...

  5. hbase权威指南阅读随手笔记二之过滤器

    转自:http://blog.csdn.net/saint1126/article/details/8257941 base过滤器的比较操作符:   LESS  <LESS_OR_EQUAL & ...

  6. 关于Cocos2d-x数据类型的使用

    常用的是三种数据类型,Value,Vector,Map,翻译成中文就是值,数组,字典.其中字典的意思就是拿着某个关键字去这个数据结构里面找相应的对应的数据. //Value数据类型 Value int ...

  7. C++ 继承、函数重载

    题外话1:浪费了两天,可耻! 题外话2:你这个年纪,做得好是理所当然,做不好是罪孽深重!!! --- 深以为然. 题外话3:从开始看C++ Primer 到现在,整整24天了,没想到基础方面耗费这么久 ...

  8. (转)Tiny210v2( S5PV210 ) 平台下 FIMD 对应 的 framebuffer 驱动中,关于 video buffer 的理解

    原文:http://www.arm9home.net/read.php?tid-25938.html 管理提醒: 本帖被 xoom 执行加亮操作(2012-12-13) 如之前所说,一直想知道显示数据 ...

  9. 《Java程序猿面试笔试宝典》之组合与继承有什么差别

    组合和继承是面向对象中两种代码复用的方式. 组合是指在新类里面创建原有类的对象,反复利用已有类的功能.继承是面向对象的主要特性之中的一个,它同意设计人员依据其他类的实现来定义一个类的实现. 组合和继承 ...

  10. par函数pch参数-控制点的形状

    pch函数用来控制点的形状,这个参数不仅在par函数中有,在大多数的高级绘图函数中都有. 代码示例: plot(rep(1:5, times = 5), rep(5:1, each = 5), pch ...