2015-02-23 56 views
-1

家伙我已经在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; 
} 
+0

使用CountDownTimer并打电话给你的动画序列。间隔= 1000ms。 – 2015-02-23 12:14:29

回答

1

您可以使用Handler s的延迟

new Handler().postDelayed(new Runnable() 
{ 
    @Override 
    public void run() 
    { 
     // run animation 
    } 
}, 1000); //1 sec 
+0

它在GridView中工作可能 – Vivil 2015-02-23 12:47:49

+0

你可以跟随聊天吗? http://chat.stackoverflow.com/rooms/19132/java-and-android-era – 2015-02-23 12:50:03

+0

sry我没有20声望我会作为另一个问题发帖 – Vivil 2015-02-23 12:54:21

2

您可以使用开始偏移

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);