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

android里面Canvas,save()与restore()。

2015-08-17 11:11 489 查看
算是转载吧:参考: http://www.iteye.com/topic/440623 href="http://www.iteye.com/topic/440623" target=_blank>可以去看看

就说下自己的理解。

==================================

主要作用:

对cavans里面一部分内容分,进行平移、旋转、缩放,操作时 不会影响其他部分。大概酱~~

Paint mPaint = new Paint();
mPaint.setColor(Color.BLUE);
canvas.drawRect(100, 200, 200, 300, mPaint);

canvas.save();//保存cavans状态<span style="color:#808080;">,保不保存没差,保存的是默认状态。</span>
// 不管注释任意部分,都不会改变第一个蓝色的正方形,理解为旋转不会影响已经绘制部分?
canvas.rotate(45);//cavans旋转45度
mPaint.setColor(Color.RED);
canvas.drawRect(150, 10, 200, 60, mPaint);
canvas.restore();//cavans还原到保存的状态,不会影响以后绘制的内容,已绘制的状态不会改变
//至于这东西只调用一半会出什么问题。。什么问题都没有,理解为  cavans有默认的保存状态,恢复不会出问题

mPaint.setColor(Color.GREEN);
canvas.drawRect(200, 60, 300, 100, mPaint);
运行后效果:



注释后效果:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: