是否可以使用onCreate()函数旋转ImageButton?或者您是否必须使用以onCreate()开头的动画?因为有了动画,我可以看到一点点"轻弹"在活动开始......
答案 0 :(得分:1)
您可以使用扩展onDraw()
的自定义类覆盖ImageButton
方法(我确定您已经拥有)。
@Override
protected void onDraw(@NonNull Canvas canvas) {
super.onDraw(canvas);
// Rotate a Bitmap
final Matrix matrix = new Matrix();
matrix.setRotate(angle, imageCenterX, imageCenterY);
canvas.drawBitmap(bitmap, matrix, null);
/*
* OR
**/
// Rotate the canvas
canvas.save(Canvas.MATRIX_SAVE_FLAG);
canvas.rotate(-angle);
canvas.drawBitmap(bitmap, left, top, null);
canvas.restore();
}
选择一个或另一个解决方案,而不是两者一起;)
修改强>
经过一些快速反思后,这也可以起作用(未经测试):
@Override
protected void onDraw(@NonNull Canvas canvas) {
canvas.rotate(-angle);
super.onDraw(canvas);
}
答案 1 :(得分:1)
您可以使用ViewCompat.setRotation(buttonInstance, rotationAngle);
。从文档
设置视图围绕轴心点旋转的度数。