有图又真相,先上图再说。

点击效果:

设置虚线:

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <shape xmlns:android="http://schemas.android.com/apk/res/android"
  3. android:shape="line" >
  4. <stroke
  5. android:dashGap="3dp"
  6. android:dashWidth="6dp"
  7. android:width="1dp"
  8. android:color="#63a219" />
  9. <!-- 虚线的高度 -->
  10. <size android:height="1dp" />
  11. </shape>

其中,破折线的宽度为dashWith,破折线之间的空隙的宽度为dashGap,当dashGap=0dp时,为实线

设置圆角:

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <shape xmlns:android="http://schemas.android.com/apk/res/android"
  3. android:shape="rectangle">
  4. <!-- 填充颜色 -->
  5. <solid android:color="#FFFFFF"></solid>
  6. <!-- 线的宽度,颜色灰色 -->
  7. <stroke android:width="1dp" android:color="#63a219"></stroke>
  8. <!-- 矩形的圆角半径 -->
  9. <corners android:radius="10dp" />
  10. </shape>

设置渐变填充和四个圆角半径:

  1. <shape xmlns:android="http://schemas.android.com/apk/res/android"
  2. android:shape="rectangle">
  3. <!--分別對應上面左圆角的半径,上面右圆角的半径,下面左圆角的半径,下面右圆角的半径-->
  4. <corners
  5. android:topLeftRadius="0dp"
  6. android:topRightRadius="7dp"
  7. android:bottomLeftRadius="0dp"
  8. android:bottomRightRadius="7dp"/>
  9. <!--設置漸變-->
  10. <gradient android:startColor="#9cff00"
  11. android:endColor="#197600"
  12. android:angle="270"/>
  13. <stroke
  14. android:width="1dp"
  15. android:color="#63a219" />
  16. </shape>

设置渐变点击效果:

  1. <style name="list_item_top">
  2. <item name="android:clickable">true</item>
  3. <item name="android:focusable">true</item>
  4. <item name="android:paddingTop">10dip</item>
  5. <item name="android:paddingBottom">10dip</item>
  6. <item name="android:paddingLeft">10dip</item>
  7. <item name="android:paddingRight">10dip</item>
  8. <item name="android:gravity">center_vertical</item>
  9. <item name="android:background">@drawable/background_view_rounded_top</item>
  10. </style>
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <inset xmlns:android="http://schemas.android.com/apk/res/android"
  3. android:insetLeft="1.0px"
  4. android:insetRight="1.0px" >
  5. <selector>
  6. <item android:state_pressed="true">
  7. <shape>
  8. <gradient
  9. android:angle="270.0"
  10. android:endColor="@color/base_end_color_pressed"
  11. android:startColor="@color/base_start_color_pressed" />
  12. <corners
  13. android:bottomLeftRadius="0.0dip"
  14. android:bottomRightRadius="0.0dip"
  15. android:radius="2.0dip"
  16. android:topLeftRadius="10.0dip"
  17. android:topRightRadius="10.0dip" />
  18. <stroke
  19. android:width="1dp"
  20. android:color="#eededede" />
  21. </shape>
  22. </item>
  23. <item>
  24. <shape>
  25. <gradient
  26. android:angle="270.0"
  27. android:endColor="@color/base_end_color_default"
  28. android:startColor="@color/base_start_color_default" />
  29. <corners
  30. android:bottomLeftRadius="0.0dip"
  31. android:bottomRightRadius="0.0dip"
  32. android:radius="2.0dip"
  33. android:topLeftRadius="11.0dip"
  34. android:topRightRadius="11.0dip" />
  35. <stroke
  36. android:width="1dp"
  37. android:color="#eededede" />
  38. </shape>
  39. </item>
  40. </selector>
  41. </inset>

重新补充:好久没有关注自己的博客,没有注意到各位的评论,关于4.0以上设备虚线会变实线的问题,下面几位仁兄已经给出了答案,

代码中可以添加:

  1. line.setLayerType(View.LAYER_TYPE_SOFTWARE, null);

xml中可以添加:

  1. android:layerType="software"

谢谢大家的参与!

源码免费下载地址:免费下载

http://download.csdn.net/detail/lan410812571/5925371

【转】Android设置虚线、圆角、渐变的更多相关文章

  1. Android设置虚线、圆角、渐变

    有图又真相,先上图再说. 点击效果: 设置虚线: <?xml version="1.0" encoding="utf-8"?> <shape  ...

  2. 44.Android之Shape设置虚线、圆角和渐变学习

    Shape在Android中设定各种形状,今天记录下,由于比较简单直接贴代码. Shape子属性简单说明一下:  gradient -- 对应颜色渐变. startcolor.endcolor就不多说 ...

  3. Android 设置进度条背景

    Android 设置进度条背景 直接上代码 <ProgressBar android:id="@+id/progressBar" android:layout_width=& ...

  4. Android ActionBar标题和渐变背景

    需要在AndroidManifest.xml中设置 android:theme="@style/Theme.AppCompat" 如果提示找不到,请按下图设置: 至于如何引入的方法 ...

  5. 【转】Android开发笔记——圆角和边框们

    原文地址:http://blog.xianqu.org/2012/04/android-borders-and-radius-corners/ Android开发笔记——圆角和边框们 在做Androi ...

  6. Xamarin Android设置界面提示类型错误

    Xamarin Android设置界面提示类型错误 错误信息:Integer types not allow (at ‘padding’ with value ’10’)Android界面属性的长度和 ...

  7. 设置UIImage 圆角

    //设置UIImage圆角 @interface UIImage(UIRoundedRectImage) + (id) createRoundedRectImage:(UIImage*)image s ...

  8. 转:Android 设置屏幕不待机

    本文转载于:http://blog.csdn.net/yudajun/article/details/7748760 Android设置支部待机有两种方法 第一种简单通过设置WindowManager ...

  9. I.MX6 android 设置 默认 动态桌面

    /************************************************************************ * I.MX6 android 设置 默认 动态桌面 ...

随机推荐

  1. ie调试工具

    调试ie6真是疯掉了,要到一个包,类firbug,js写的不错. 链接:http://pan.baidu.com/s/1c2JOs0K 密码:fea8

  2. IOSFramework打包。

    http://www.cocoachina.com/ios/20150127/11022.html

  3. myeclipse页面编辑框空格、回车符、对齐出现特殊字符

    myeclipse页面编辑框空格.回车符.对齐出现特殊字符 解决办法:window-preferences-general-editors-Text Editors    把show whitespa ...

  4. linux修改文件所属用户和组

    使用chown命令可以修改文件或目录所属的用户: 命令:chown 用户 目录或文件名 例如:chown qq /home/qq  (把home目录下的qq目录的拥有者改为qq用户) 使用chgrp命 ...

  5. 八、java集合类

    与数组的区别: 数组的长度是固定的,集合的长度是可变的.数组用来存放基本类型的数据,集合用来存放对象的引用. 1.集合类接口的常用方法 COllection接口是层次结构中的根接口,该接口提供了添加和 ...

  6. Dev GridControl导出

    问题一. DevExpress GridView导出到Excel中不能导出自定义日期 问题描述: 我有一个第一列为日期列的GridView.它在运行时会绑定到日期,但他们通过CustomColumnD ...

  7. 1:wamp如何更改网站根目录DocumentRoot 2:php的error_log文件(txt)会每秒几十K增大

    wamp如何更改网站根目录DocumentRoot     想必很多人都使用wamp来开发php的web应用吧,同时某些情况下我们或许需要修改服务器的根目录来方便我们搭建和开发网站,接下里我们将说明如 ...

  8. [原创]AM3352 + TPS65910 调试方法+调试记录

    时间:20160912 一.电源时序排查 1.保证正确的上电时序,一般都会在CPU数据手册中提到.通常不会规定具体的上电先后时间的要求,多数情况下会要求前一个电平上升到90%满幅度之后才可以有下一个电 ...

  9. MyBatis 内连接association 左外连接collection

    前提条件: 学生表 (多  子表) 年级表(一  主表) 1,第一种情况:先查子表所有 student.sql.xml文件如何配 由于有多表连接,无法把查询结果直接封装成一个实体对象--------& ...

  10. Nessus基本命令

    /etc/init.d/nessusd start 启动nessusd服务 默认端口8834 添加用户(未知是什么用户) sudo /opt/nessus/sbin/nessus-adduser