1,gradient(渐变)

【1】用以定义渐变色,可以定义两色渐变和三色渐变,及渐变样式;

android:type=["linear" | "radial" | "sweep"]    //共有3中渐变类型,线性渐变(默认)/放射渐变/扫描式渐变

android:angle="integer"     //渐变角度,必须为45的倍数,0为从左到右,90为从上到下

android:centerX="float"     //渐变中心X的相当位置,范围为0~1

android:centerY="float"     //渐变中心Y的相当位置,范围为0~1

android:startColor="color"   //渐变开始点的颜色

android:centerColor="color"  //渐变中间点的颜色,在开始与结束点之间

android:endColor="color"    //渐变结束点的颜色

android:gradientRadius="float"  //渐变的半径,只有当渐变类型为radial时才能使用

android:useLevel=["true" | "false"] />  //使用LevelListDrawable时就要设置为true。设为false时才有渐变效果

首先有三种渐变类型,分别是:linear(线性渐变)、radial(放射性渐变)、sweep(扫描式渐变)

android:useLevel属性通常不使用。该属性用于指定是否将该shape当成一个LevelListDrawable来使用,默认值为false。

angle属性确实只对线性渐变有效,其它两种渐变方式都没有任何动静

centerX、centerY两个属性用于设置渐变的中心点位置,仅当渐变类型为放射渐变时有效。

2,Demo实现效果

我们使用三色渐变来看看这三种渐变方式都是怎么显示的:(如果不使用centerColor属性就是双色渐变,这个属性是可选的)

注意: 在构造放射性渐变时,要加上android:gradientRadius属性(渐变半径),即必须指定渐变半径的大小才会起作用

【1】 线性渐变

实现效果

shape 代码

android:type="linear"

android:startColor="#ff0000"

android:centerColor="#00ff00"

android:endColor="#0000ff"/>

【2】 放射性渐变

实现效果

实现代码

android:type="radial"

android:startColor="#ff0000"

android:centerColor="#00ff00"

android:endColor="#0000ff"

android:gradientRadius="100"/>

【3】 扫描式渐变

实现效果

实现代码

android:type="sweep"

android:startColor="#ff0000"

android:centerColor="#00ff00"

android:endColor="#0000ff"/>

【4】android:angle属性修改渐变角度 (仅对线性渐变有效)

1)android:angle="integer" //渐变角度,必须为45的倍数,0为从左到右,90为从上到下

2)angle属性确实只对线性渐变有效,其它两种渐变方式都没有任何动静

实现效果:

实现代码:

android:type="linear"

android:startColor="#ff0000"

android:centerColor="#00ff00"

android:endColor="#0000ff"

android:angle="45"/>

【5】android:centerX与android:centerY

1) android:centerX="0.2",android:centerY="0.8"

2)centerX、centerY两个属性用于设置渐变的中心点位置,仅当渐变类型为放射渐变时有效。

3)类型为分数或小数,不接受Dimension。默认值是0.5,有效值是0.0~1.0,超出该范围后会看不出渐变效果。centerX、centerY的取值其实是宽和高的百分比

实现效果

实现代码: 取宽度的20%和高度的80%的位置,作为新的渐变原点

android:type="sweep"

android:startColor="#ff0000"

android:centerColor="#00ff00"

android:endColor="#0000ff"

android:centerX="0.2"

android:centerY="0.8"/>

总结

以上所述是小编给大家介绍的Android实现 Shape属性gradient 渐变效果,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!

如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

时间: 2019-11-26

android shape自定义渐变,Android实现 Shape属性gradient 渐变效果相关推荐

  1. android如何自定义dialog,Android—自定义Dialog

    在 Android 日常的开发中,Dialog 使用是比较广泛的.无论是提示一个提示语,还是确认信息,还是有一定交互的(弹出验证码,输入账号密码登录等等)对话框. 而我们去看一下原生的对话框,虽然随着 ...

  2. android+渐变+百分比,Android实现 Shape属性gradient 渐变效果

    1,gradient(渐变) [1]用以定义渐变色,可以定义两色渐变和三色渐变,及渐变样式: android:type=["linear" | "radial" ...

  3. android自定义控件颜色渐变,Android编程实现自定义渐变颜色效果详解

    本文实例讲述了Android编程实现自定义渐变颜色效果.分享给大家供大家参考,具体如下: 你是否已经厌恶了纯色的背景呢?那好,Android提供给程序员自定义渐变颜色的接口,让我们的界面炫起来吧. x ...

  4. android 圆角按钮渐变,Android实现圆形渐变加载进度条

    最近设计要求要一个圆形进度条渐变的需求: 1.画圆形进度条 2.解决渐变 最终实现效果代码 package com.view; import android.content.Context; impo ...

  5. android switch自定义样式,Android自定义Switch样式

    如图自定义的Switch样式: 5421606984766_.pic.jpg 需要注意的是:switch的大小是跟thumb的大小有关 下面以样式二为例: switch_track_selector_ ...

  6. android toolbar 颜色渐变,android – 如何使渐变形状留在CollapsingToolbarLayout标题后面...

    我一直在玩 Chris Bane's Cheesesquare example application关于折叠工具栏布局,我在折叠工具栏上添加标题背后的渐变时,即使背景很亮,标题仍然可读. 该解决方案 ...

  7. android sqlite自定义函数,Android中自定义一个View的方法详解

    本文实例讲述了Android中自定义一个View的方法.分享给大家供大家参考,具体如下: Android中自定义View的实现比较简单,无非就是继承父类,然后重载方法,即便如此,在实际编码中难免会遇到 ...

  8. android如何自定义viewpager,Android自定义ViewPager实现个性化的图片切换效果

    第一次见到ViewPager这个控件,瞬间爱不释手,做东西的主界面通通ViewPager,以及图片切换也抛弃了ImageSwitch之类的,开始让ViewPager来做.时间长了,ViewPager的 ...

  9. android开发自定义键盘,Android 总结:自定义键盘实现原理和三种实例详解

    1.实现原理 实现软键盘主要用到了系统的两个类 Keyboard 和 KeyboardView .html 1. Keyboard 用于监听虚拟键盘:java Loads an XML descrip ...

  10. android 中自定义安装,Android开发中ListView自定义adapter的封装

    [引入] 我们一般编写listView的时候顺序是这样的: •需要展示的数据集List •为这个数据集编写一个ListView •为这个ListView编写一个Adapter,一般继承自BaseAda ...

最新文章

  1. 如何利用zendstudio新建 或导入php项目
  2. table布局注意点
  3. C++知识点5——迭代器简述
  4. 电大计算机统考模拟题在哪里学,[2017年电大]电大-计算机统考模拟题.doc
  5. UIVIewController自定义切换效果-b
  6. Hdoj Minimize The Difference
  7. 思科认证网络工程师CCNA(更新完毕)
  8. 在 Xunit 中使用依赖注入
  9. js过渡效果_干货 | Vue事件、过渡和制作index页面
  10. 台北宇珍2021春拍捷报,美国博物馆专拍创下白手套佳绩
  11. Nginx配置文件详解
  12. 移动硬盘遇到无法访问,文件或目录损坏且无法读取的解决办法
  13. 你知道战国四大名将都有谁吗
  14. ShapeContext
  15. 深圳知名语音ic品牌,语音芯片方案公司,多功能语音芯片,WTV890
  16. 澳大利亚:千万别惹这几种蛇,它们可是人类的噩梦
  17. 职称计算机pptt应用模块,2016年职称计算机考试PowerPoint单选练习题4
  18. Arduino使用HC05蓝牙模块与手机连接
  19. win2019离线安装.NET Framework 3.5的方法
  20. 嵌入式学习-----keil的安装

热门文章

  1. Sql server 双机热备份数据库
  2. 97年小伙“最牛简历”刷屏:面子算什么,我只想搞钱
  3. jdk版本问题:hour_day_of 0 -1
  4. 内网穿透群晖NAS:免费安装cpolar群晖套件 1/2
  5. Validator校验器中重新定义默认的错误信息模板
  6. 芝麻授权 java调用_手机浏览器怎么调用支付宝进行用户授权呢?
  7. 【AVD】视频解码时如何获取 coded_width coded_height 即参与编码的宽高
  8. 英语16种时态表和人称表
  9. 苹果手机没声音了显示耳机模式_Airpods Pro 安卓苹果双机体验
  10. linux 内核移植和根文件系统的制作