最近学习了一下3D相册的代码,发现LinearGradient类可以来实现图片倒影的渐变效果(图片是网上找的,仅供参考),下面记录一下该用法:
LinearGradient是实现线性渐变的效果,用法如下:
Paint p=new Paint(); //生成画笔对象
LinearGradient lg=new LinearGradien(0,0,100,100,Color.RED,Color.BLUE,Shader.TileMode.MIRROR);//生成 LinearGradient
对象
参数一:为渐变起点坐标的x轴位置,
参数二 :为渐变起点坐标的y轴位置,
参数三 :为渐变终点坐标的x轴位置,
参数四 :为渐变终点坐标的y轴位置,
参数五 :平铺方式,这里设置为镜像
因为LinearGradient是extends Shader类的,所以我们通过Paint的setShader方法来设置这个渐变,代码如下:
p.setShader(lg);
canvas.drawRect(0, height, width, bitmapWithReflection.getHeight()+ reflectionGap, p);
另外:
它除了定义开始颜色和结束颜色以外还可以定义,多种颜色组成的分段渐变效果
LinearGradient shader = new LinearGradient(startX, startY, endX, endY, new int[]{startColor, midleColor, endColor},new float[]{0 , 0.5f, 1.0f}, TileMode.MIRROR);
其中参数new int[]{startColor, midleColor, endColor}是参与渐变效果的颜色集合,
其中参数new float[]{0 , 0.5f, 1.0f}是定义每个颜色处于的渐变相对位置,
这个参数可以为null,如果为null表示所有的颜色按顺序均匀的分布
分享到:
相关推荐
LinearGradient实现TextView字体渐变的效果
【Android UI】Paint Gradient 渐变渲染 ① ( LinearGradient 线性渐变渲染 | 设置渲染方向 | 设置渲染颜色 | 设置渲染模式 | MIRROR ) https://blog.csdn.net/shulianghan/article/details/125047457 博客配套源码 ...
android实现TextView文字部分渐变色;LinearGradientFontSpan SpannableString
Android 圆形颜色渐变进度条 自定义控件 博客地址见: http://blog.csdn.net/wangchunlei123/article/details/50478913
LinearGradient也称作线性渲染,LinearGradient的作用是实现某一区域内颜色的线性渐变效果,看源码你就知道他是shader的子类。 它有两个构造函数 public LinearGradient(float x0, float y0, float x1, float y1, ...
GradientTextView 效果 GradientTextView 功能 GradientTextView是一个文字颜色逐步改变的自定义view,目前只有两种颜色。 如何使用 GradientTextView Step 1. Add it in your root build.gradle at the end of ...
给一张图片添加从上到下的线性渐变: ShaderMask( shaderCallback: (Rect bounds) { return LinearGradient( begin: Alignment.topCenter, end: Alignment.bottomCenter, colors: [Colors.red,Colo
博客《自定义控件三部曲之绘图篇(十九)——LinearGradient与闪动文字效果》对应源码,博客地址:http://blog.csdn.net/harvic880925/article/details/52350154
int mWidth=oldBitmap.getWidth(); int mHeight=oldBitmap.getHeight(); /** * 第一步:创建倒立的Bitmap,... * 第六步:用一个矩形覆盖在倒立的像上,这样在渐变的效果下使得看起来像倒影一样 * 大功告成
主要介绍了iOS SwiftUI 颜色渐变填充效果的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
在安全卫生上,经常看到有圆形的进度条在转动,效果非常好看,于是就尝试去实现...LinearGradient实现颜色的线型渐变 同样的道理,可以画出长条进度条,扇图饼图等,感兴趣可以试下.. package com.liujing.progressvi
1.渐变色,看起来颜色变化并不复杂,使用LinearGradient应该可以实现。 2.圆头,无非是画两个圆,外圆使用渐变色的颜色,内圆固定为白色。 3.灰底,还没有走到的进度部分为灰色。 4.进度值,使用文本来显示; 5....
TextViewGradient.rar。要用TextView使用渐变色,那我们就必须要了解LinearGradient(线性渐变)的用法并且实现歌词播放效果。 渐变效果
LinearGradient 组件 react-native-linear-gradient ,react-native-linear-gradient 是一个 React Native 的 Li...
前阵子在github上看到一个很不错的动画效果,叫做ShimmerLayout,是一个...1) 首先我们需要绘制出最上层的微光,这里通过LinearGradient线性渐变渲染器来绘制微光渐变效果,为了使得渐变自然,我们看到,代码里在前
第三章 使用Graphics2D实现动态效果 64 3.1 概述 64 3.2 invalidate()方法 65 3.3 坐标转换 69 3.4 剪切区(Clip) 73 3.5 案例:指针走动的手表 82 3.6 练习作业 88 第四章 双缓存技术 89 4.1 双缓存 89 4.2 在...
Delegate implementing the native methods of android.graphics.LinearGradient.