在我的Android应用中,我想对某些animation
应用imageViews
并实施延迟。当第一个imageView
动画为50%时,我想开始第二个animation
的{{1}}并继续这样做。
我使用了imageView
方法。
Thread.sleep()
但是当它运行应用程序时,它会在启动任何public void showImage() throws IOException, InterruptedException{
final Animation anim = AnimationUtils.loadAnimation(Home.this,R.anim.myanimation);
image_1.setImageUrl(links[0]);
image_2.setImageUrl(links[1]);
image_3.setImageUrl(links[2]);
image_4.setImageUrl(links[3]);
image_5.setImageUrl(links[4]);
image_6.setImageUrl(links[5]);
image_7.setImageUrl(links[0]);
image_8.setImageUrl(links[1]);
//System.out.println("me");
image_1_layer.setAnimation(anim);
Thread.sleep(5000);
image_2_layer.setAnimation(anim);
Thread.sleep(5000);
image_3_layer.setAnimation(anim);
Thread.sleep(5000);
image_4_layer.setAnimation(anim);
Thread.sleep(5000);
image_5_layer.setAnimation(anim);
Thread.sleep(5000);
image_6_layer.setAnimation(anim);
Thread.sleep(5000);
image_7_layer.setAnimation(anim);
Thread.sleep(5000);
image_8_layer.setAnimation(anim);
Thread.sleep(5000);
}
之前延迟,然后对所有animation
进行逐个动画处理。如何在上一个imageViews
imageView
的5秒后开始为下一个imageView
制作动画?
我从覆盖方法animation
调用了上述showImage()
方法。
答案 0 :(得分:3)
使用Thread.sleep
是实现目标的错误方法。您应该查看Animation
课程,特别是setStartTime
课程。
您可以构建具有不同(复合)开始时间的不同动画对象,并将所有这些对象应用于视图,或者您可以使用setAnimationListener