android中LinearGradient线性渐变
16lz
2021-01-26
Paint p=new Paint();
LinearGradient lg=new LinearGradien(0,0,100,100,Color.RED,Color.BLUE,Shader.TileMode.MIRROR);
参数一为渐变起初点坐标x位置,参数二为y轴位置,参数三和四分辨对应渐变终点,最后参数为平铺方式,这里设置为镜像
Gradient是基于Shader类,所以我们通过Paint的setShader方法来设置这个渐变,代码如下: mPaint.setShader(lg);
canvas.drawCicle(0,0,200,mPaint); //参数3为画圆的半径,类型为float型。
它除了定义开始颜色和结束颜色以外还可以定义,多种颜色组成的分段渐变效果
LinearGradient shader = new LinearGradient(0, 0, 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表示所有的颜色按顺序均匀的分布
更多相关文章
- Android6.0-新控件(一)
- Android中8个常用的操作
- Android--Animation动画介绍和实现
- 从TabLayout源码告诉你使用它的正确姿势,让你马上爱上它
- Android换肤功能实现(白天、黑夜)
- android.graphics包简介
- android中的三种适配器
- 接着归纳Android(安卓)from 《第一行代码》
- ListView中的ArrayAdapter