如何保持动画状态?

时间:2013-02-11 20:56:22

标签: android android-animation

我在启动我的应用程序时在ImageView上执行旋转动画。

然后在应用程序中的一个事件中,我想用相同的ImageView做一个淡出动画。

这是有效的,但在它执行淡出动画之前,它会在旋转动画之前将ImageView状态恢复。

所以它跳回到“未旋转”状态然后淡出。

是否可以在第一次旋转后保持ImageView的动画状态,然后使用淡出动画从那里开始?

2 个答案:

答案 0 :(得分:0)

仅仅因为你动画的东西并不意味着你已经永久地改变了它(见previous discussion)。在开始另一个动画之前,您可能需要修改onAnimationEnd()方法以使第一个动画的效果永久化。

答案 1 :(得分:0)

好吧我必须使用Matrix旋转而不是动画我想:

ImageView circle = (ImageView) findViewById(R.id.imageView1);
Bitmap myImg = BitmapFactory.decodeResource(getResources(), R.drawable.rotated);

Matrix matrix = new Matrix();
matrix.postRotate(45);

Bitmap rot = Bitmap.createBitmap(myImg, 0, 0, myImg.getWidth(), myImg.getHeight(),
        matrix, true);

circle.setImageBitmap(rot);