我想要的是,从下面的代码,每个动画开始延迟,就像一个序列。所以我有这个代码:Android如何在多个动画中添加一些延迟?
public void setAnimation(){
View view;
String animation = prefs.getString("animations", "Scale");
String interpolator = prefs.getString("interpolators", "Bounce");
Animation animate = AnimationUtils.loadAnimation(getApplicationContext(), R.anim.scale_in);
for(int i=0; i<gridView.getChildCount(); i++){
view = gridView.getChildAt(i);
view.startAnimation(animate);
}
}
因为有一个for循环,所有儿童动画将立即开始。我已经尝试过:
Thread.sleep....
Handler...
animate.setStartTime...
animate.setStartOffset...
但所有儿童动画立即开始。提前
animate.setAnimationListener(new AnimationListener(){
public void onAnimationEnd(Animation arg0) {
view.startAnimation(animate);
}
public void onAnimationRepeat(Animation arg0) {
}
public void onAnimationStart(Animation arg0) {
}
});
感谢名单:
这个方法我试过循环的内部,动画将无法启动。
添加一个动画监听器,当一个动画完成时开始下一个 – Blundell 2012-02-18 13:11:32