关于Android自定义view 你所需要知道的基本函数
2016-03-15 16:35
585 查看
开始时之前想吐槽一句。。iphone的闹钟,12小时制。我成功的把闹钟订到了下午5:00 导致错过一班飞机。心疼改签费。
候机ing,没有事做,来写一下学习自定义view必须掌握的基本函数。这里只挑一些常用的进行讲解。
首先 往Canvas上面draw需要一个Paint。 画笔常用的函数有哪些呢。由于木有调试环境,函数基本上默写,有错请评论提出,蟹蟹!
[java] view
plain copy
Paint p = new Paint();
//设置画笔的颜色
p.setColor(Color.parseColor("#2EA4F2"));
//设置画笔的风格:全部填充FILL 只画轮廓STROKE
p.setStyle(Paint.Style.STROKE);
//设置画笔的宽度
p.setStrokeWidth(8);
//设置是否抗锯齿
p.setAntiAlias(true);
[java] view
plain copy
//设置文字大小
p.setTextSize(30);
//测量字符串的长度
p.MeasureText("Hello World");
当我们有了画笔后,就可以绘制基本图形。
线:
[java] view
plain copy
//绘制一条从0,0到100,100的线
canvas.drawLine(0,0,100,100,p);
三角形&多边形
是用Path类实现的。Path类提供了点绘制线的功能,看例子
[java] view
plain copy
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);
矩形:
[java] view
plain copy
//画一个矩形,左上角的坐标为0,0 右下角的坐标为100,50
canvas.drawRect(0,0,100,50,p);
圆角矩形:
[java] view
plain copy
//一个矩形
RectF rectF = new RectF(0,0,100,50);
//画一个圆角矩形,大小为rectF,20,20分表表示左边圆角的半径和右边圆角的半径
canvas.drawRoundRect(RectF,20,20,p);
圆形
[java] view
plain copy
//画一个圆,圆心为50,50 半径为100
canvas.drawCircle(50,50,100,p);
弧形 注意这里第二个参数,是从三点钟方向为0°计算,所以想从12点中方向开始绘制,那么就是270°。第四个参数是决定是否经过圆心(自己改变一下这个参数就知道区别了)。
[java] view
plain copy
//画一个弧,弧所在矩形为rectF 从270°开始,画90° 不经过圆心
canvas.drawArc(rectF,270,90,false,p);
以上基本上是自定义view所用到的最基本的函数,欢迎补充。
候机ing,没有事做,来写一下学习自定义view必须掌握的基本函数。这里只挑一些常用的进行讲解。
首先 往Canvas上面draw需要一个Paint。 画笔常用的函数有哪些呢。由于木有调试环境,函数基本上默写,有错请评论提出,蟹蟹!
[java] view
plain copy
Paint p = new Paint();
//设置画笔的颜色
p.setColor(Color.parseColor("#2EA4F2"));
//设置画笔的风格:全部填充FILL 只画轮廓STROKE
p.setStyle(Paint.Style.STROKE);
//设置画笔的宽度
p.setStrokeWidth(8);
//设置是否抗锯齿
p.setAntiAlias(true);
[java] view
plain copy
//设置文字大小
p.setTextSize(30);
//测量字符串的长度
p.MeasureText("Hello World");
当我们有了画笔后,就可以绘制基本图形。
线:
[java] view
plain copy
//绘制一条从0,0到100,100的线
canvas.drawLine(0,0,100,100,p);
三角形&多边形
是用Path类实现的。Path类提供了点绘制线的功能,看例子
[java] view
plain copy
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);
矩形:
[java] view
plain copy
//画一个矩形,左上角的坐标为0,0 右下角的坐标为100,50
canvas.drawRect(0,0,100,50,p);
圆角矩形:
[java] view
plain copy
//一个矩形
RectF rectF = new RectF(0,0,100,50);
//画一个圆角矩形,大小为rectF,20,20分表表示左边圆角的半径和右边圆角的半径
canvas.drawRoundRect(RectF,20,20,p);
圆形
[java] view
plain copy
//画一个圆,圆心为50,50 半径为100
canvas.drawCircle(50,50,100,p);
弧形 注意这里第二个参数,是从三点钟方向为0°计算,所以想从12点中方向开始绘制,那么就是270°。第四个参数是决定是否经过圆心(自己改变一下这个参数就知道区别了)。
[java] view
plain copy
//画一个弧,弧所在矩形为rectF 从270°开始,画90° 不经过圆心
canvas.drawArc(rectF,270,90,false,p);
以上基本上是自定义view所用到的最基本的函数,欢迎补充。
相关文章推荐
- Android中的MVC
- Android 点击两次返回键 退出程序
- DateTimePicker——开源的Android日历类库
- 重要通知:“它”来了。Android N Developer Preview
- Android Service服务的简单总结
- 坑爹的Android Ble 问题记录日志
- Android 教你打造炫酷的ViewPagerIndicator
- Android 手把手教您自定义ViewGroup(一)
- Android开发入门之Android开发工具原生包NDK
- Android进程通信之一:两种序列化方式
- 【Android】数据存储之SharedPreferences
- Android 实现同个Activity中存在多个Fragment多次切换之后依次返回(一)(Fragment回退栈简单使用)
- 手把手带你画一个 时尚仪表盘 Android 自定义View
- 详解Android中AsyncTask的使用
- 手把手带你做一个超炫酷loading成功动画view Android自定义view
- android中方法id超过65536官方解决办法
- 手把手教你画一个 逼格满满圆形水波纹loadingview Android
- 关于BLE的android开发,你该知道的一切
- GitHub 上排名前 100 的 Android 开源库简介
- android_内容提供者的升级定义和访问