Android渲染器Shader:梯度渐变扫描渲染器SweepGradient(二)

附录文章1介绍了线性渐变渲染器。

Android的SweepGradient梯度渐变扫描,重点是在构造SweepGradient的中心点选择。我写一个例子。

package zhangphil.demo;

import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.SweepGradient;
import android.util.AttributeSet;
import android.view.View; /**
* Created by Phil on 2016/7/25.
*/ public class SweepGradientView extends View { private Paint mPaint = null; // 梯度渐变扫描渲染
private SweepGradient mSweepGradient = null; public SweepGradientView(Context context, AttributeSet attrs) {
super(context, attrs);
} @Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas); mSweepGradient = new SweepGradient(this.getWidth() / 2, this.getHeight() / 2, new int[]{Color.TRANSPARENT, Color.RED, Color.TRANSPARENT, Color.YELLOW, Color.BLUE}, null);
mPaint = new Paint();
mPaint.setAntiAlias(true); mPaint.setShader(mSweepGradient); canvas.drawCircle(this.getWidth() / 2, this.getHeight() / 2, 300, mPaint);
}
}

SweepGradientView直接像附录文章1那样在上层的activity里面new出来一个对象,然后setContentView进去即可。

代码运行结果:

附录文章:

1,《Android渲染器Shader:LinearGradient(一)》链接:http://blog.csdn.net/zhangphil/article/details/52004027

最新文章

  1. 封装ajax
  2. linux定时执行脚本
  3. TCP建立连接、断开连接以及正常报文的报头和报位的大小
  4. node-webkit中使用sqlite3(MAC平台)
  5. Oracle translate 函数的用法, 以及和replace的区别
  6. Android开发之意图解析
  7. 已经包含了#include <atlcom.h> #include <comutil.h>还是报错
  8. Swift - 判端网络连接状态,连接类型(3G还是Wifi)
  9. nginx源代码分析--event事件驱动初始化
  10. QT自绘标题和边框
  11. PostgreSQL指南
  12. C++实现的控制台-贪吃蛇
  13. Spring之定时器(QuartzJobBean)的实现
  14. 第一章——机器学习总览(The Machine Learning Landscape)
  15. 深度学习二、CNN(卷积神经网络)概念及理论
  16. 最新版本汉化-PowerDesigner 16.6 汉化并河蟹
  17. E. Superhero Battle
  18. jQ append 添加html 及字符串拼接
  19. QTP 自动货测试桌面程序-笔记-运行结果中添加截图
  20. pyqt4手动编写资源文件

热门文章

  1. vue中的问题思考
  2. B. Code For 1 一个类似于线段树的东西
  3. Hadoop的ChainMapper和ChainReducer使用案例(链式处理)(四)
  4. 【学习笔记】比特(bit)、字,字节(B)存储单位之间的关系+其与操作系统位数的关系+不同编译器编译方式下数据类型的表示范围
  5. eclipse搭建android开发环境详细步骤
  6. js中json处理总结之JSON.parse
  7. 给Sublime Text3 设置自定义快捷键
  8. JS concat() 方法
  9. Promise 理解与使用
  10. CNN完成mnist数据集手写数字识别