动画在xml中等待我的程序解决方案不起作用

时间:2017-03-20 18:58:58

标签: java android xml android-animation

您好我有动画xml文件

<?xml version="1.0" encoding="utf-8"?>

<scale
    android:duration="300"
    android:fromXScale="1.0"
    android:fromYScale="2.0"
    android:toXScale="1.0"
    android:toYScale="1.0"
    />

当我点击按钮时,图片布局从底部出现。持续时间300毫秒

我需要在300毫秒之后添加1000毫秒,仅用于站立布局和隐藏之后..

我尝试使用此代码解决此问题:

ImageView delpop= (ImageView) findViewById(R.id.deletepop);
    delpop.setVisibility(View.VISIBLE);

    Animation animdel;
    animdel = AnimationUtils.loadAnimation(getApplicationContext(),R.anim.popdelanim);
    FrameLayout ppdl= (FrameLayout)findViewById(R.id.popupDelete);
    ppdl.setVisibility(View.VISIBLE);

    ppdl.startAnimation(animdel);
    animdel.setAnimationListener(new Animation.AnimationListener() {
        @Override
        public void onAnimationStart(Animation animation) {
            ImageView delpop= (ImageView) findViewById(R.id.deletepop);
            delpop.setVisibility(View.VISIBLE);
        }

        @Override
        public void onAnimationEnd(Animation animation) {

            final ImageView delpop= (ImageView) findViewById(R.id.deletepop);
            // popupdel.setVisibility(View.GONE);
            delpop.setVisibility(View.VISIBLE);

            android.os.Handler mHandler = new android.os.Handler();
            mHandler.postDelayed(new Runnable() {
                @Override
                public void run() {

                    delpop.setAlpha(1f);
                    delpop.animate().alpha(0).setDuration(300);
                    if (clicked) {
                        PomocnaDel(DEL);
                    }
                    DEL=-1;

                }
            }, 1000);

        }

        @Override
        public void onAnimationRepeat(Animation animation) {


        }
    });

这个代码运行良好,但只有一个。我将此方法称为↑6个不同的按钮。 适合每一个人,但只有一次。如果我点击第一个按钮代码运行良好,但是当我点击第二个按钮动画后不能正常工作。

如果我只点击一个按钮一切都不错,但如果点击按钮后也不行。

请帮助

由于

/////////////////////////////////编辑///////////// //////////////////////////////

当我开始动画两次时,我从开始运行(没有重启)。这可能吗?

1 个答案:

答案 0 :(得分:0)

我在结束方法中使用了FADE动画,但淡化动画保留在0f =&gt; j transparrent上。

我用onAnimationStar中的代码解决了这个问题 delpop.setAlpha(1F);