Android ImageView: How can I get the current rotat

2019-07-03 21:46发布

问题:

I rotate an image view to point an arrow in the desired direction. Before performing the next rotation (using RotateAnimation), how can I get the currently rotated angle of the ImageView?

Thanks

回答1:

You need store your previous rotation angle in some variable.



回答2:

Save rotate angle:

    ImageView arrow = (ImageView) findViewById(R.id.arrow);
    float x = arrow.getPivotX();
    float y = arrow.getPivotY();
    RotateAnimation anim = new RotateAnimation(arrowRotateStartAngle, arrowRotateXAngle, arrow.getWidth()/2, arrow.getHeight()/2);
    anim.setFillAfter(true);
    anim.setDuration(1000);
    arrow.startAnimation(anim);

    temRotate = arrowRotateStartAngle;
    arrowRotateStartAngle = arrowRotateXAngle;
    arrowRotateXAngle = temRotate;