一:對畫布進行操作
canvas?.rotate() 畫布的旋轉
canvas?.scale() 畫布的拉伸
canvas?.translate()畫布的移動
二:畫布操作
canvas?.save() 保存先前的操作
......
............ 在畫布里面進行各種影片的實作
canvas?.restore() 將畫布還原
三:例子
1:對之前的操作進行保存
canvas?.save()
2:對畫布的操作,這兒是將畫布在x方向上移動100,在y上移動100
canvas?.translate(100f,100f)
3:畫圖
canvas?.drawCircle(0f,0f,50f,paintBigCircle)
4:在將畫布與原來的畫布重合
canvas?.restore()
canvas?.save()與canvas?.restore()是成對出現的
4:效果
如圖所示,是上面例子所得效果,
canvas?.drawCircle(0f,0f,50f,paintBigCircle)
在畫圓的時候其中心點是在畫布的(0,0)的位置,但是得出圓點中心點明顯不在(0,0)
這時候中心點在藍色底的(100,100)的位置
因為:
canvas?.translate(100f,100f)
在畫圓之前已經將畫布的起始點移到了(100,100)的位置,這時候畫圓的位置坐標是以
移動之后的畫布為參考點的,

轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/286126.html
標籤:Android
上一篇:轉Andriod之路第一個功能
