动画内部按钮单击无响应

时间:2018-03-11 16:23:11

标签: android animation

我试图点击按钮上的动画。它只工作了一次。我使用的动画是Alpha.It在按钮点击之外工作。任何人都可以找到这种奇怪行为的原因?

代码:

button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
AlphaAnimation alphaAnimation=new AlphaAnimation(1.0f,0.0f);

                alphaAnimation.setDuration(2000);
                button.setAnimation(alphaAnimation);
                alphaAnimation.start();
                alphaAnimation.setAnimationListener(new Animation.AnimationListener() {
                    @Override
                    public void onAnimationStart(Animation animation) {

                    }

                    @Override
                    public void onAnimationEnd(Animation animation) {

                    }

                    @Override
                    public void onAnimationRepeat(Animation animation) {

                    }
                });
               Log.e("Alpha","a");}
});

1 个答案:

答案 0 :(得分:1)

使用startAnimation。

来自官方文件:

  

void setAnimation(动画动画)

     

设置要为此视图播放的下一个动画。如果您想立即播放动画,请改用startAnimation(android.view.animation.Animation)。此方法允许对开始时间和失效进行细粒度控制,但您必须确保1)动画具有开始时间设置,以及2)视图的父级(控制其子级上的动画)将当动画应该开始时无效。

以下是一个示例代码段。

 AlphaAnimation alphaAnimation = new AlphaAnimation(1.0f,0.0f);
    alphaAnimation.setDuration(2000);
    alphaAnimation.setAnimationListener(new Animation.AnimationListener() {
        @Override
        public void onAnimationStart(Animation animation) {

        }

        @Override
        public void onAnimationEnd(Animation animation) {

        }

        @Override
        public void onAnimationRepeat(Animation animation) {

        }
    });
    button.startAnimation(alphaAnimation);