android Paint 和Canvas的简单使用
来源:互联网 发布:手机淘宝怎么关注达人 编辑:程序博客网 时间:2024/04/29 20:46
public class DrawView extends View { public DrawView(Context context, AttributeSet attrs) { super(context, attrs); } @Override protected void onDraw(Canvas canvas) { super.onDraw(canvas); Paint paint = new Paint();//定义默认画笔 //线性渐变 Shader shader = new LinearGradient(0,0,50,50, Color.RED,Color.GREEN,Shader.TileMode.MIRROR); paint.setShader(shader);//为画笔设置渐变器 canvas.drawRect(10,70,100,150,paint);//绘画一个矩形 //径向渐变 shader = new RadialGradient(160,110,50,Color.RED,Color.GREEN,Shader.TileMode.MIRROR); paint.setShader(shader);//为画笔设置渐变器 canvas.drawRect(115,70,205,150,paint); //角度渐变 shader = new SweepGradient(265,110,new int[]{Color.RED,Color.GREEN,Color.BLUE},null); paint.setShader(shader); canvas.drawRect(220,70,310,150,paint); }}
画奥运五环:
canvas.drawColor(Color.WHITE);//指定画布背景色为白色Paint paint = new Paint();//创建画笔paint.setAntiAlias(true);//使用抗锯齿功能paint.setStrokeWidth(3);//设置笔触的宽度paint.setStyle(Paint.Style.STROKE);//设置填充样式为描边paint.setColor(Color.BLUE);canvas.drawCircle(50,50, 30, paint);//绘制蓝色的圆形paint.setColor(Color.YELLOW);canvas.drawCircle(100,50,30,paint);//绘制黄色的圆形paint.setColor(Color.BLACK);canvas.drawCircle(150,50,30,paint);//绘制黑色的圆形paint.setColor(Color.GREEN);canvas.drawCircle(75,90,30,paint);//绘制绿色的圆形paint.setColor(Color.RED);canvas.drawCircle(125,90,30,paint);//绘制红色的圆形绘制曲线
Paint paint = new Paint();//创建画笔paint.setAntiAlias(true);//设置抗锯齿paint.setColor(Color.RED);//设置画笔颜色paint.setTextSize(18);//设置文字大小paint.setStyle(Paint.Style.STROKE);//设置填充方式为描边//绘制圆形路径图Path path = new Path();//创建实例化一个Path对象path.addCircle(70,70,40,Path.Direction.CCW);//添加逆时针圆形路径canvas.drawPath(path,paint);//绘制路径//绘制折线路径Path pathLine = new Path();pathLine.moveTo(150,100);//设置起始点pathLine.lineTo(200, 45);//设置第一个直线结束点pathLine.lineTo(250, 100);//设置第二个直线结束点pathLine.lineTo(300,80);//设置第三个直线结束点canvas.drawPath(pathLine,paint);//绘制路径//绘制三角路径Path pathTr = new Path();pathTr.moveTo(350,80);//设置起始点pathTr.lineTo(400, 0);//设置第一条边的结束点也就是第二条边的起始点pathTr.lineTo(450, 80);//设置第二条的结束点也就是第三条边的起始点pathTr.close();canvas.drawPath(pathTr,paint);//绘制绕路径的环形文字String str = "嘿嘿嘿嘿嘿嘿嘿嘿嘿嘿嘿";Path path1 = new Path();path.addCircle(550,100,48,Path.Direction.CW);//添加顺时针圆形路径paint.setStyle(Paint.Style.FILL);//设置画笔的 填充方式canvas.drawTextOnPath(str,path1,0,-18,paint);<com.weipeng.xuexi20160119.DrawView android:layout_width="wrap_content" android:layout_height="wrap_content" />
0 0
- android Paint 和Canvas的简单使用
- Canvas和paint的使用
- Android绘图基础:Canvas、Paint、Path的简单使用
- android 自定义view学习笔记————Paint和Canvas的简单使用
- Android的Paint和Canvas的使用总结
- Android的Paint和Canvas的使用总结
- Android中canvas和paint的关系及使用
- Android中canvas和paint的关系及使用
- Android自定义View---前奏篇(Paint和Canvas的使用)
- Android中canvas和paint的关系及使用
- Android绘图篇-01 Canvas和Paint的基础使用
- Paint和 Canvas的简单应用
- Android Canvas和Paint
- Android自定义View,paint+canvas的使用
- Android Canvas 和Paint的用法
- Android的Canvas、Bitmap、Drawable和Paint
- Android 的画布Canvas和画笔Paint
- Android的Paint、Canvas和Matrix讲解
- FFmpeg avformat_open_input函数打开acc,h264失败的错误问题
- NYOJ73(比大小)
- 八大排序算法的Python实现
- UML中类之间的几种关系,关联(association),聚合(Aggregation),组合(Composition)
- mybatis学习
- android Paint 和Canvas的简单使用
- 2014百度【PC客户端研发】校招面经
- Javascript 闭包详解!
- C语言中运算符的优先级
- 【LeetCode OJ 016】3Sum Closest
- 八大排序算法的Python实现
- ART中 MIR --> LIR --> 机器码 的流程
- -boundingRectWithSize:options:attributes:context:用法
- 杂七杂八