首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >动画不会在postDelayed运行()中调用

动画不会在postDelayed运行()中调用
EN

Stack Overflow用户
提问于 2015-03-25 20:27:59
回答 1查看 940关注 0票数 2

我有一个线性布局,我希望它是动画后,3秒延迟使用Handler。

经过3秒之后,它甚至没有执行动画,也没有进入动画监听器的方法。

我就是这样做的:

代码语言:javascript
复制
    loginBox.setVisibility(View.GONE);
    new Handler().postDelayed(new Runnable() {
        @Override
        public void run() {

            Animation animTranslate = AnimationUtils.loadAnimation(getApplicationContext(),
                    R.anim.translate);
            animTranslate.setAnimationListener(new Animation.AnimationListener() {
                @Override
                public void onAnimationStart(Animation animation) {
                }

                @Override
                public void onAnimationEnd(Animation animation) {
                    loginBox.setVisibility(View.VISIBLE);
                    Animation animFade = AnimationUtils.loadAnimation(getApplicationContext(), R.anim.fade);
                    loginBox.startAnimation(animFade);
                }

                @Override
                public void onAnimationRepeat(Animation animation) {
                }
            });

            btnContinue.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    Intent i = new Intent(getApplicationContext(), MainActivity.class);
                    startActivity(i);

                    finish();
                }
            });


        }
    }, 3000);

单击btnContinue时,run()方法工作良好。

我怎么才能让它起作用?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-03-25 20:30:22

你忘了打电话

代码语言:javascript
复制
loginBox.startAnimation(animTranslate)

在启动loginBox.setVisibility(View.VISIBLE);之前,您可能需要TranslateAnimation

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29265867

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档