我想制作一个图像框(使它们从右向左移动,空间间隔)我尝试制作具有不同起点的多个动画,因为我教它可能有效(但它不仅仅是一张图片动画)。
到目前为止,这是我的代码:
ImageView img_animation = (ImageView) findViewById(R.id.imageView1);
ImageView img_animation2 = (ImageView) findViewById(R.id.imageView2);
ImageView img_animation3 = (ImageView) findViewById(R.id.imageView3);
img_animation.setImageResource(R.drawable.num1);
img_animation2.setImageResource(R.drawable.num2);
img_animation2.setImageResource(R.drawable.num3);
TranslateAnimation animation = new TranslateAnimation(50.0f, -300.0f,
0.0f, 0.0f);
animation.setDuration(20000);
animation.setRepeatCount(10);
TranslateAnimation animation2 = new TranslateAnimation(100.0f, -300.0f,
0.0f, 0.0f);
animation.setDuration(20000);
animation.setRepeatCount(10);
TranslateAnimation animation3 = new TranslateAnimation(150.0f, -300.0f,
0.0f, 0.0f);
animation.setDuration(20000);
animation.setRepeatCount(10);
img_animation.startAnimation(animation);
img_animation2.startAnimation(animation2);
img_animation3.startAnimation(animation3);
我想到的下一件事是使用线程,但如果我是正确的,只有一个动画可以运行。我还教过从这三个中制作一个图像(但是会有白色背景,我希望它是透明的)。任何帮助表示赞赏。
编辑:也尝试
animation.setStartOffset(1000);
只有第一个开始
答案 0 :(得分:1)
你正在使用相同的动画变量。试试这个:
TranslateAnimation animation = new TranslateAnimation(50.0f, -300.0f,
0.0f, 0.0f);
animation.setDuration(20000);
animation.setRepeatCount(10);
TranslateAnimation animation2 = new TranslateAnimation(100.0f, -300.0f,
0.0f, 0.0f);
animation2.setDuration(20000);
animation2.setRepeatCount(10);
TranslateAnimation animation3 = new TranslateAnimation(150.0f, -300.0f,
0.0f, 0.0f);
animation3.setDuration(20000);
animation3.setRepeatCount(10);
img_animation.startAnimation(animation);
img_animation2.startAnimation(animation2);
img_animation3.startAnimation(animation3);