Canvas的save和restore

时间:2014-06-06 13:16:09   收藏:0   阅读:263

onDraw方法里,我们经常会看到调用saverestore方法,它们到底是干什么用的呢?

bubuko.com,布布扣
int px = getMeasuredWidth();
int py = getMeasuredWidth();
 
// Draw background
canvas.drawRect(0, 0, px, py, backgroundPaint);
 
canvas.save();
canvas.rotate(90, px/2, py/2);                
 
// Draw up arrow
canvas.drawLine(px / 2, 0, 0, py / 2, linePaint);                
canvas.drawLine(px / 2, 0, px, py / 2, linePaint);
canvas.drawLine(px / 2, 0, px / 2, py, linePaint);
 
canvas.restore();
 
// Draw circle
canvas.drawCircle(px - 10, py - 10, 10, linePaint);
bubuko.com,布布扣

bubuko.com,布布扣

 

如果我们不调用saverestore会是什么样子呢?

bubuko.com,布布扣

Canvas的save和restore,布布扣,bubuko.com

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!