我有一个动画,可以在点击图像视图时显示,然后在进入另一个活动之前完成动画。我一直试图这样做。
这是我的代码:
public void myAnimation()
AnimationDrawable animation;
animation = new AnimationDrawable();
animation.addFrame(
getResources().getDrawable(R.drawable.large_ring_monotone),
1000);
animation.addFrame(getResources()
.getDrawable(R.drawable.large_ring_eal), 1000);
animation.addFrame(
getResources().getDrawable(R.drawable.large_ring_blue), 1000);
animation.addFrame(
getResources().getDrawable(R.drawable.large_ring_monotone),
1000);
animation.setOneShot(true);
img_big_2_back.setOnClickListener(new OnClickListener){
img_big_2_back.setBackgroundDrawable(animation);
try {
animation.start();
Thread.sleep(3000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Intent i1 = new Intent(MAinACtivity.this,SecondActivity.class);
startActivity(i1);
});
}
任何人都可以告诉我出错的地方
答案 0 :(得分:3)
男人,如果你的活动在动画完成之前就被调用了,那么尝试设置动画监听器,你可以在收到动画完成回调后从那里开始活动。
http://developer.android.com/reference/android/view/animation/Animation.AnimationListener.html
答案 1 :(得分:1)
首先,为什么代码中有Thread Sleep
?这不是等待动画结束的方式。试试this thread的答案。您可以使用this answer