Android在打开应用程序时显示动画,并在完成时将意图发送给主类
我想制作一个应用程序,在启动时显示一帧一帧的动画。动画完成后,我想向主类发送一个意图(提醒列表活动)。然而,我似乎找不到如何定义动画何时完成 以下是相关代码: 动画课Android在打开应用程序时显示动画,并在完成时将意图发送给主类,android,android-intent,android-animation,Android,Android Intent,Android Animation,我想制作一个应用程序,在启动时显示一帧一帧的动画。动画完成后,我想向主类发送一个意图(提醒列表活动)。然而,我似乎找不到如何定义动画何时完成 以下是相关代码: 动画课 public class LoadActivity extends Activity { AnimationDrawable animation; long endTimeMillis; @Override public void onCreate(Bundle savedInstanceState) { sup
public class LoadActivity extends Activity {
AnimationDrawable animation;
long endTimeMillis;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.load_animation);
startAnimation();
}
class Starter implements Runnable {
public void run() {
animation.start();
}
}
private void startAnimation(){
animation = new AnimationDrawable();
animation.addFrame(getResources().getDrawable(R.drawable.dude1), 75);
//....
animation.addFrame(getResources().getDrawable(R.drawable.dude10), 75);
animation.setOneShot(true);
ImageView imageView = (ImageView) findViewById(R.id.img);
imageView.setImageDrawable(animation);
imageView.post(new Starter());
Intent i = new Intent(LoadActivity.this, ReminderListActivity.class);
startActivity(i);
}
}无法注册要在单拍动画结束时调用的侦听器。作为一种解决方法,您已经知道动画的持续时间,可以在已知延迟后开始活动:
postDelayed(new Runnable() {
Intent i = new Intent(LoadActivity.this, ReminderListActivity.class);
startActivity(i);
}, 75 + 75);
实现方式如下:Handler=newhandler();postDelayed(new Runnable(){public void run(){Intent i=new Intent(LoadActivity.this,remenderListActivity.class);startActivity(i);}},2600);它就像一个符咒!谢谢