Android 如何更改旋转轴
我想翻转轴上的图像视图,该轴与Y轴向左或向右成45度角。如何获得新的旋转轴,以及如何将其应用于图像视图。这里是链接 我想要达到的目标Android 如何更改旋转轴,android,android-animation,android-canvas,android-ui,android-custom-view,Android,Android Animation,Android Canvas,Android Ui,Android Custom View,我想翻转轴上的图像视图,该轴与Y轴向左或向右成45度角。如何获得新的旋转轴,以及如何将其应用于图像视图。这里是链接 我想要达到的目标 谢谢 您可以通过Matrix类实现这一点 Matrix mtrx=new Matrix(); imageView.setScaleType(ScaleType.MATRIX); mtrx.postRotate((float) angle, pivX, pivY); imageView.setImageMatrix(mtrx); 您应该重写draw方法或通过
谢谢 您可以通过Matrix类实现这一点
Matrix mtrx=new Matrix();
imageView.setScaleType(ScaleType.MATRIX);
mtrx.postRotate((float) angle, pivX, pivY);
imageView.setImageMatrix(mtrx);
您应该重写draw方法或通过扩展ImageView创建自己的图像视图类,然后在draw()中旋转轴旋转画布,对于翻转,您可以使用适用于API 11+的objectanimator,对于11之前的版本,您可以使用位于url下方的nineodandroids.com库 用于实现类似View.setRotationY的三维旋转
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();
我个人项目的结果可以在下面查看。
感谢Onur的响应,但旋转画布不会改变旋转轴,它只会旋转视图。旋转画布,绘制动画,然后恢复画布,这样它就可以工作了:)我尝试过这个,但无法用这个来改变轴,你能帮我解决角度、pivX、pivY的问题吗?