我想知道如何在特定页面上复出后重复播放动画。当您访问某个活动时,我的动画基本上会将一个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);
每次访问活动时如何使动画重新启动?
答案 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都会调用。