动画时间为不同的图像
问题描述:
家伙我已经在XML中设置了五个不同的imageview我想同一个动画效果与一秒delay.Animation必须按顺序发生一个一个。对于Android应用程序的起始页我已经完成this.so我应该在这里做什么是我的代码动画时间为不同的图像
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_welcome);
a=(ImageView)findViewById(R.id.imageView1);
b=(ImageView)findViewById(R.id.imageView2);
c=(ImageView)findViewById(R.id.imageView3);
d=(ImageView)findViewById(R.id.imageView4);
e=(ImageView)findViewById(R.id.imageView5);
aAnimation(savedInstanceState);
bAnimation(savedInstanceState);
cAnimation(savedInstanceState);
dAnimation(savedInstanceState);
eAnimation(savedInstanceState);
}
private void aAnimation(Bundle savedInstanceState) {
Animation aa=AnimationUtils.loadAnimation(getApplicationContext(),R.anim.slideup);
a.startAnimation(aa);
}
private void bAnimation(Bundle savedInstanceState) {
Animation aa=AnimationUtils.loadAnimation(getApplicationContext(),R.anim.slideup);
b.startAnimation(aa);
}
private void cAnimation(Bundle savedInstanceState) {
Animation aa=AnimationUtils.loadAnimation(getApplicationContext(),R.anim.slideup);
c.startAnimation(aa);
}
private void dAnimation(Bundle savedInstanceState) {
Animation aa=AnimationUtils.loadAnimation(getApplicationContext(),R.anim.slideup);
d.startAnimation(aa);
}
private void eAnimation(Bundle savedInstanceState) {
Animation aa=AnimationUtils.loadAnimation(getApplicationContext(),R.anim.slideup);
e.startAnimation(aa);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.welcome, menu);
return true;
}
答
您可以使用Handler
s的延迟
new Handler().postDelayed(new Runnable()
{
@Override
public void run()
{
// run animation
}
}, 1000); //1 sec
答
您可以使用开始偏移
http://developer.android.com/reference/android/view/animation/Animation.html
延迟毫秒动画运行之前,一旦开始时间是 达到。
例如:
在XML:
<set android:startOffset="1000">
<scale
android:fromXScale="0.5"
android:toXScale="1.0"
android:fromYScale="0.5"
android:toYScale="1.0"
android:pivotX="50%"
android:pivotY="50%"
android:duration="1000" />
</set>
OR
在JAVA:
Animation aa = AnimationUtils.loadAnimation(getApplicationContext(),R.anim.slideup);
aa.setStartOffset(1000);
a.startAnimation(aa);
使用CountDownTimer并打电话给你的动画序列。间隔= 1000ms。 – 2015-02-23 12:14:29