在Android开发过程中,经常需要改变控件的默认样式, 那么通常会使用多个图片来解决。不过这种方式可能需要多个图片,比如一个按钮,需要点击时的式样图片,默认的式样图片。 这样就容易使apk变大。另一种方式就是使用自定义图形来改变控件样式。

自定义图形shape有以下几种属性

1.solid:填充

2.gradient:对应颜色渐变。 startcolor、endcolor就不多说了。 android:angle 是指从哪个角度开始变

3.stroke:描边

4.corners:圆角

5.padding:间距 定义内容离边界的距离

实现步骤:

1.在drawable文件下创建一个my_shape.xml文件。

2.在my_shape.xml文件中编写样式代码

  <shape xmlns:android="http://schemas.android.com/apk/res/android" >

    <solid android:color="#ffffffff" />

    <corners android:radius = "10dp"/>

    <padding android:bottom="5dp" android:top="5dp" android:left="5dp" android:right="5dp"/>

    <stroke android:width="1dp" android:color="#ff00bbe8"/>
  </shape>

3.在使用的控件中设置android:backgroud=@drawable/my_shape,也可以在style样式文件中设置。

效果图如下:

转载于:https://www.cnblogs.com/michaelShao/p/4640714.html

Android自定义图形shape相关推荐

  1. Android自定义图形-Shape

    1 概述 1.1 编写目的 学习Android自定义图形shape相关的知识,记录下来,方便后续学习及查询. 2 Shape图形 Android上Shape有以下几种属性shape. corners. ...

  2. android 自定义图形,Android自定义View之图形图像(模仿360的刷新球自定

    概述: 360安全卫士的那个刷新球(姑且叫它刷新球,因为真的不知道叫什么好,不是dota里的刷新球!!),里面像住了水一样,生动可爱,看似简单,写起来不太简单,本例程只是实现了它的部分功能而已,说实话 ...

  3. android 画布叠加,Android自定义图形,图形的拼接、叠加、相容

    直接上Xfermode子类: AvoidXfermode  指定了一个颜色和容差,强制Paint避免在它上面绘图(或者只在它上面绘图). PixelXorXfermode  当覆盖已有的颜色时,应用一 ...

  4. Android中使用shape自定义纯色图片总结

    android中通过自定义xml实现你需要的shape效果 xml属性配置, 在Android开发过程中,经常需要改变控件的默认样式, 那么通常会使用多个图片来解决.不过这种方式可能需要多个图片,比如 ...

  5. Android自定义Shape

    1.圆角控件 首先,定义形状: drawable/roundctrl.xml <?xml version="1.0" encoding="UTF-8"?& ...

  6. Android App开发之自定义图形中位图与图形互转、剪裁图形内部区域、给图形添加部件的讲解及实战(附源码 简单易懂)

    需要图片和源码点赞关注收藏后评论区留言~~~ 一.位图与图形互转 Drawable用于在界面上展示图片,Bitmap用于加工图像数据,所以两者之间的转换非常有必要,位图图形BitmapDrawable ...

  7. Android开发之shape自定义ProgressBar进度条样式

    1.xml代码方式一:如下(此shape是放到drawable目录下的) <rotate xmlns:android="http://schemas.android.com/apk/r ...

  8. Android 自定义shape圆形按钮

    Shape的属性: solid 描述:内部填充 属性:android:color 填充颜色 size 描述:大小 属性: android:width 宽 android:height 高 gradie ...

  9. Android:自定义Shape 加上阴影shadow之方法

    直接用layer-list来实现,在项目 res->drawable中创建一个xml,如果列表中有layer-list选择的话直接选择创建,如果没有的话就随意(似乎4.0以下没有 layer-l ...

  10. Android 自定义环形圆形显示统计数据z

    <?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http: ...

最新文章

  1. Django:数据库表的建立与增删查改(ForeignKey和ManytoMany)
  2. linux修改网卡文件夹,CentOS7 修改网卡名称为eth0在VMWare中添加多网卡配置
  3. Eclipse生成get,set方法,无参构造方法和有参构造方法
  4. C++中 类与类之间的关系
  5. (回溯法)和为n的所有不增正整数和式分解算法
  6. 数据结构算法—递归算法求二叉树的叶子结点(C语言)
  7. Typora给插图加入图注
  8. 《Implicit Class-Conditioned Domain Alignment for Unsupervised Domain Adaptation》
  9. 挂一张表,省的再瞎眼
  10. uniapp 无法获取动态dom节点,解决方案
  11. [Codeforces] #603 (Div. 2) A-E题解
  12. Android通知不显示横幅的一个坑
  13. JS addEventListener()方法
  14. 什么是WinSxS?
  15. 单选框与复选框数据回填
  16. JavaScript通信之Ajax
  17. 资源者、配置者、投资人
  18. 在线微量水总结与应用
  19. [网鼎杯 2020 玄武组]SSRFMe
  20. 用pandas_profiling生成数据报告遇到的各种坑

热门文章

  1. win2003 ent 64 + mssql ent 64
  2. iOS GBK转换为Utf8
  3. CTO 说,再用错@Autowired 和@Resource 就可以领盒饭了
  4. 用 Java 爬小姐姐图片,直接拿来用!这个厉害了。。。
  5. 首席架构师眼中的架构应该是怎样的?
  6. 996.ICU凉凉了!
  7. 产品经理改需求这件事
  8. python 日期减一天_怎么用Python在指定日期上减去7天?
  9. *第二周*数据结构实践项目二【多文件系统】
  10. 记录利用CSS完美解决前端图片变形问题