Android Canvas 的使用
来源:互联网 发布:linux查看hca卡 编辑:程序博客网 时间:2024/06/05 09:31
由于对UI多种多样的需求,单纯的android给定的控件已经无法满足我们。这个时候我们就需要去自定义控件。就会用到Canvas画布。
在Canvas上,我们想画什么就画什么。
一个简单棋盘格的示例:
首先要创建一个类来继承自View来实现画布;
复写类的Ondraw方法,所有的绘制都在Ondraw里完成;
初始化一个Paint 画笔,来对画布进行绘制。
public class GameView extends View { private int startX = 0; private int startY = 0; private int GRID_NUM; private int GRID_WIDTH; private Paint paint = null; public GameView(Context context,int number) { super(context); GRID_NUM = number; paint = new Paint();//实例化一个画笔 paint.setAntiAlias(true);//设置画笔去锯齿,没有此语句,画的线或图片周围不圆滑 } public void onDraw(Canvas canvas) { canvas.drawColor(Color.GREEN);//背景色 paint.setColor(Color.BLUE);//画笔颜色 // 每个格子的宽度 GRID_WIDTH = this.getWidth()/(GRID_NUM-1); //宽度*各自每行数量=一行格子所占尺寸。屏幕总尺寸-有用尺寸=空白尺寸,空白尺寸/2为每个边所空闲空间 startX = this.getWidth()%(GRID_NUM-1)/2; startY = startX; Toast.makeText(getContext(),"各尺寸:"+ GRID_WIDTH+"占用尺寸: " + GRID_NUM*GRID_WIDTH + "总尺寸: " + this.getWidth(),Toast.LENGTH_SHORT).show(); for (int i = 0; i < GRID_NUM; i++) { canvas.drawLine(startX, startY + i * GRID_WIDTH, startX + (GRID_NUM - 1) * GRID_WIDTH, startY + i * GRID_WIDTH, paint); canvas.drawLine(startX + i * GRID_WIDTH, startY, startX + i * GRID_WIDTH, startY + (GRID_NUM - 1) * GRID_WIDTH, paint); } }}一个简单的棋盘格绘制就完成了,还可以根据传入的参数来显示不同格子数量的棋盘格
0 0
- android canvas的使用
- Android Canvas 的使用
- android-Canvas的使用-随心
- Android 中Canvas的使用
- android canvas的基本使用
- android Canvas的基本使用
- 【Android Canvas系列】使用canvas绘制简单的clock
- Android中canvas.save()和canvas.restore()的使用
- Android中canvas.save()和canvas.restore()的使用
- android canvas中translate函数的使用
- 【Android】自定义View之Canvas的使用
- Android 中Canvas.drawBitmap()的使用
- android Paint 和Canvas的简单使用
- android Canvas的两种使用情形
- Android——Canvas类的使用
- Android自定义View,paint+canvas的使用
- Android-Canvas使用技巧
- Android--使用Canvas绘图
- 父子组件之间的通信
- 使用Autolayout xib实现动态高度的TableViewCell
- 并行计算
- Elasticsearch(七)【NEST高级客户端--序列化】
- 完美解决 Ubuntu 屏幕分辨率异常问题
- Android Canvas 的使用
- Codeforces Round #411 (Div. 2) 题解
- Android 基类Base的封装
- 简单了解CSS
- 避免事件冒泡
- 241. Different Ways to Add Parentheses
- 常用的工具
- 多物体运动动画js脚本
- 深度优先搜索应用:走迷宫