您的位置:首页 > 移动开发 > Android开发

自定义view 常用函数简介

2017-04-10 09:52 155 查看
自定义view是我们开发过程中经常用到的,这里对常用的函数做了个简介和综合

参考博客地址 自定义view必须掌握的基本函数

Paint p = new Paint();
//设置画笔的颜色
p.setColor(Color.parseColor("#2EA4F2"));
//设置画笔的风格:全部填充FILL   只画轮廓STROKE
p.setStyle(Paint.Style.STROKE);
//设置画笔的宽度
p.setStrokeWidth(8);
//设置是否抗锯齿
p.setAntiAlias(true);

//设置文字大小
p.setTextSize(30);
//测量字符串的长度
p.MeasureText("Hello World");

当我们有了画笔后,就可以绘制基本图形。

线:

//绘制一条从0,0到100,100的线
canvas.drawLine(0,0,100,100,p);

三角形&多边形

是用Path类实现的。Path类提供了点绘制线的功能,看例子

path.MoveTo(0,0);//给定path的起点
path.LineTo(10,10);//往10,10绘制一条路径
path.LineTo(5,3);//继续从10,10往5,3绘制一条路径
path.close;//将绘制的线形成封闭空间
canvas.drawPath(path,p);

矩形:

//画一个矩形,左上角的坐标为0,0   右下角的坐标为100,50
canvas.drawRect(0,0,100,50,p);

圆角矩形:

//一个矩形
RectF rectF = new RectF(0,0,100,50);
//画一个圆角矩形,大小为rectF,20,20分表表示左边圆角的半径和右边圆角的半径
canvas.drawRoundRect(RectF,20,20,p);

圆形

//画一个圆,圆心为50,50  半径为100
canvas.drawCircle(50,50,100,p);

弧形

注意这里第二个参数,是从三点钟方向为0°计算,所以想从12点中方向开始绘制,那么就是270°。第四个参数是决定是否经过圆心(自己改变一下这个参数就知道区别了)。

//画一个弧,弧所在矩形为rectF  从270°开始,画90° 不经过圆心
canvas.drawArc(rectF,270,90,false,p);

椭圆

//定义一个矩形区域
RectF oval = new RectF(0,0,200,300);
//矩形区域内切椭圆
canvas.drawOval(oval, paint);

绘制文本

canvas.drawPosText("Android777", new float[]{
10,10, //第一个字母在坐标10,10
20,20, //第二个字母在坐标20,20
30,30, //....
40,40,
50,50,
60,60,
70,70,
80,80,
90,90,
100,100
}, paint);

画文本在路径上

Path path = new Path();
path.moveTo(100, 100);
path.lineTo(200, 100);
path.lineTo(200, 200);
path.lineTo(100, 200);
path.lineTo(100, 100);
//	canvas.drawPath(path, paint);
canvas.drawTextOnPath("Android777开发者博客", path, 10, 10, paint);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息