Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/231.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/silverlight/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 创建时旋转图像按钮,不带动画_Android_Rotation_Imagebutton_Oncreate - Fatal编程技术网

Android 创建时旋转图像按钮,不带动画

Android 创建时旋转图像按钮,不带动画,android,rotation,imagebutton,oncreate,Android,Rotation,Imagebutton,Oncreate,是否可以使用onCreate()函数旋转ImageButton?还是必须使用从onCreate()开始的动画?因为通过动画,我可以看到活动开始时有一点“轻弹”…您可以使用扩展ImageButton的自定义类覆盖onDraw()方法(我相信您有) 选择一个或另一个解决方案,而不是同时选择两个;) 编辑 经过一些快速思考后,这也可以起作用(未经测试): 您可以使用ViewCompat.setRotation(按钮实例、旋转角度)。从文件中 设置视图围绕轴心点旋转的角度 谢谢:)修好了 @Ov

是否可以使用onCreate()函数旋转ImageButton?还是必须使用从onCreate()开始的动画?因为通过动画,我可以看到活动开始时有一点“轻弹”…

您可以使用扩展
ImageButton
的自定义类覆盖
onDraw()
方法(我相信您有)

选择一个或另一个解决方案,而不是同时选择两个;)

编辑

经过一些快速思考后,这也可以起作用(未经测试):


您可以使用
ViewCompat.setRotation(按钮实例、旋转角度)。从文件中

设置视图围绕轴心点旋转的角度

谢谢:)修好了
    @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);
    }