Android 翻译动画进度回调

标签 android android-animation

我正在使用 Translate 动画(借自 here ),如下所示:

TranslateAnimation a = new TranslateAnimation(
Animation.ABSOLUTE,200, Animation.ABSOLUTE,200,
Animation.ABSOLUTE,200, Animation.ABSOLUTE,200);
a.setDuration(1000);
a.setFillAfter(true);
animationSet.addAnimation(a);
myView.startAnimation(a);

有没有回调可以给我myView的当前位置?我想在动画进行时根据 myView 的位置执行操作。

最佳答案

不幸的是不是,但你可以做这样的事情。使用

a.setRepeatCount(200);

并将动画设置为每次移动 1 个像素

Animation.ABSOLUTE,1

然后

 a.setAnimationListener(new Animation.AnimationListener() {
            @Override
            public void onAnimationStart(Animation animation) {

            }

            @Override
            public void onAnimationEnd(Animation animation) {

            }

            @Override
            public void onAnimationRepeat(Animation animation) {
                 // this will fire after each repetition 
            }
        });

关于Android 翻译动画进度回调,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45711090/

相关文章:

android - 分配给这个 Bitmap 的内存有多少?

android - View 上的动画

java - 在 Android Room 主线程外返回数据

java - Android studio 给出 AssertionError : null error in new project creation

android - setClipChildren 和硬件层

android - WindowManager 中 imageView 的动画在 android 4.xx 中不起作用

java - Android:检测按钮外的 ACTION_UP 事件

java - Android属性动画: how to increase view height?

android - 我是否需要 android 的任何特殊许可证书才能发布 android 应用程序?如何在 Release模式下签署 android 应用程序?

java.net.UnknowHostException 与 ksoap2