首页 > 其他 > 详细

View以自身中心旋转的代码解惑

时间:2015-11-22 12:27:42      阅读:298      评论:0      收藏:0      [点我收藏+]

matrix.preTranslate(-centerX, -centerY);

matrix.postTranslate(centerX, centerY);

经常在中心旋转的应用中看到这段代码.

 

preTranslate是指在matrix旋转之前平移,postTranslate是指在matrix旋转之后平移

注意他们参数是平移的距离,而不是平移目的地的坐标!

 

由于旋转是以原点(0,0)为中心的,所以为了把界面的中心移至(0,0)对齐,就要preTranslate(-centerX, -centerY),这样看到的效果就是View以自身为中心点旋转,此时View的中心在原点的位置,等matrix操作完成后,调用postTranslate(centerX, centerY),再把图片移回来,这样看到的动画效果就是View原地以自己为中心不停的旋转了

 

注:centerX和centerY是界面View中心的坐标

 

View以自身中心旋转的代码解惑

原文:http://www.cnblogs.com/krislight1105/p/4985483.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!