-1

我正在使用翻译动画为视图制作动画。我已经使用了 setFillAfter(true) 并且动画成功了。

我的代码是。

final ImageView image= (ImageView) findViewById(R.id.image2);
        image.setBackgroundResource(R.drawable.lamb);
        final Animation animation = AnimationUtils.loadAnimation(this, R.anim.translate);
        animation.setFillAfter(true);
        image.startAnimation(animation);
        animation.setAnimationListener(new AnimationListener() 
        {
            public void onAnimationStart(Animation animation) {     }
            public void onAnimationRepeat(Animation animation) {    }
            public void onAnimationEnd(Animation animation) 
            {
                Handler ss = new Handler();
                ss.postDelayed(new Runnable() 
                {
                    public void run() 
                    {
                        image.setVisibility(View.INVISIBLE);
                    }
                } ,4000);
            }
        });

我使用处理程序在 4 秒后隐藏图像视图,但它没有隐藏。一段时间后如何隐藏图像?

动画结束后,我想在最后一个位置显示图像,所以我使用 setFillAfter(true); 4 秒后,我隐藏图像视图。

如何使图像不可见?

4

2 回答 2

0

您将需要设置 AnimationListener。当动画结束时,使视图不可见。

moveForward.setAnimationListener(new AnimationListener(){

        @Override
        public void onAnimationEnd(Animation animation) {
            view.setVisibility(View.INVISIBLE);
        }

        @Override
        public void onAnimationRepeat(Animation animation) {
        }

        @Override
        public void onAnimationStart(Animation animation) {
        }

});
于 2012-05-04T13:13:54.037 回答
0

image.clearAnimation(),在 setVisibility(View.INVISIBLE) 之前

于 2017-03-21T07:51:12.747 回答