Android UI SurfaceView的使用-绘制单个图型或多个图形
2015-10-05 16:47
716 查看
新建MyView类继承自SurfaceView:
效果:
------------
public class MyView extends SurfaceView implements SurfaceHolder.Callback { private Paint paint; public MyView(Context context) { super(context); paint=new Paint(); paint.setColor(Color.RED); getHolder().addCallback(this); } public void draw(){ //绘制画布前锁定画布 Canvas canvas=getHolder().lockCanvas(); canvas.drawColor(Color.WHITE); //从画布的50x50开始绘制,绘制到100x100,绘制面积50x50 canvas.drawRect(50, 50, 100, 100, paint); //将第一条线顺时针旋转90度 canvas.save(); //将画布处可编辑状态 canvas.rotate(90,getWidth()/2,getHeight()/2); //按中心点进行旋转 canvas.drawLine(0, getHeight()/2, getWidth(), getHeight(), paint); canvas.restore();// 将画布复原 canvas.drawLine(0, getHeight()/2+100, getWidth(), getHeight()+100, paint); //绘制画布结束后解锁画布 getHolder().unlockCanvasAndPost(canvas); } @Override public void surfaceChanged(SurfaceHolder holder, int format, int width, int height) { } @Override public void surfaceCreated(SurfaceHolder holder) { draw(); } @Override public void surfaceDestroyed(SurfaceHolder holder) { }MainActivity:
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(new MyView(this)); }
效果:
------------
相关文章推荐
- UITextField
- Android UI SurfaceView的使用-绘制单个图型或多个图形
- require的定义看不懂【2】
- UITableViewCell中设置不同图片尺寸相同以及设置图片为圆形的方法
- ./configure -build,-host,-target设置
- hdu 1005 -- Number Sequence
- Java多线程15:Queue、BlockingQueue以及利用BlockingQueue实现生产者/消费者模型
- UITapGestureRecognizer 的用法
- UNIX环境高级编程中的apue.h头文件的问题
- UI_三个UITableView的省市区联动
- UITableView
- UVA_540: Team Queue
- break 和 return 和 continue
- mininet error: Cannot find required executable ovs-controller.
- HDU 5496(Beauty of Sequence-DP)
- poj 3566 Building for UN(为联合国而建)
- gFStu的UI控件
- POJ 3566 (弱校联萌十一大决战之厉兵秣马 B. Building for UN)
- u3d零基础学习之2d游戏学习笔记
- quicklisp 如何卸载本地项目