1

我想在从 Y 轴向左或向右 45 度的轴上翻转图像视图。如何获得这个新的旋转轴以及如何将其应用于图像视图。这是我想要实现的链接。

https://www.youtube.com/watch?v=hDlp-aWq-uM&feature=youtu.be

谢谢!

4

3 回答 3

3

像 View.setRotationY 一样使用Camera实现 3D 旋转。

camera.save();
camera.rotateY(rotate);
camera.getMatrix(matrix);
matrix.preTranslate(-left, 0);
matrix.postTranslate(left, 0);
camera.restore();

canvas.save();
canvas.concat(matrix);

canvas.drawBitmap(...);

canvas.restore();

我的个人项目的结果可以在下面查看。 在此处输入图像描述

于 2018-06-14T00:07:31.357 回答
0

您应该覆盖draw方法或通过扩展ImageView创建自己的图像视图类,然后旋转轴在draw()中旋转画布,对于翻转,您可以使用可用于API 11+和pre-11的objectanimator您可以使用位于以下网址的 Nineoldandroids.com 库

http://nineoldandroids.com/

于 2013-06-27T11:42:28.213 回答
0

您可以使用 Matrix 类来实现这一点

Matrix mtrx=new Matrix();
imageView.setScaleType(ScaleType.MATRIX);  
mtrx.postRotate((float) angle, pivX, pivY);
imageView.setImageMatrix(mtrx);
于 2013-06-27T11:39:22.387 回答