动画:访问其他活动并回来后如何重复播放动画?

时间:2018-09-12 11:53:12

标签: java android animation translation

我想知道如何在特定页面上复出后重复播放动画。当您访问某个活动时,我的动画基本上会将一个RelativeLayout向下转换几个像素。但是,如果我然后单击在另一个页面上发送给我的按钮,然后单击“后退”按钮返回,则TranslationAnimation不会再次开始。

代码如下:

RelativeLayout r1;

    r1 = findViewById(R.id.r1);

    TranslateAnimation a = new TranslateAnimation(0,0,-10f,0);
    a.setDuration(800);
    a.setFillAfter(true);
    r1.startAnimation(a);

每次访问活动时如何使动画重新启动?

2 个答案:

答案 0 :(得分:2)

在活动中使用单独的方法

void myanimation(){
TranslateAnimation a = new TranslateAnimation(0,0,-10f,0);
a.setDuration(800);
a.setFillAfter(true);
r1.startAnimation(a);
}

然后在活动onResume内调用方法

@Override
public void onResume(){
super.onResume();
myanimation();

}

答案 1 :(得分:1)

在onResume()方法中使用它。每次与活动进行交互时,OnResume都会调用。