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

android Matrix.setRotate 和 postRotate的区别

2015-09-01 06:46 295 查看
今天在做一个模拟时钟的项目时,需要对指针进行旋转操作。开始使用的是setRotate()方法对指针图片进行旋转操作,之后又需要对指针进行位移,又使用了setTranslate()方法,发现旋转效果没有了,只有平移效果了。自己研究了半天,终于发现了问题的原因所在。

其实Matrix方法中的setRotate()方法会先清除该矩阵,即设为单位矩阵。之后设置旋转操作的,同样,setTranslate()等方法也是一样的。所以是不能叠加各种效果在一起的,因此会出现我上述的问题。

所以,如果是想多种效果同时使用的话,用postRotate(), postTranslate()等类似的矩阵变换方法吧。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息