在我的Android应用程序中,我需要一个接一个地动画图像视图我有四个图像视图动画应该继续一个接一个地进行图像视图
我尝试过使用线程
iv1=(ImageView)findViewById(R.id.imageView1);
iv2=(ImageView)findViewById(R.id.imageView2);
iv3=(ImageView)findViewById(R.id.imageView3);
iv4=(ImageView)findViewById(R.id.imageView4);
iv1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
animSlideUp = AnimationUtils.loadAnimation(getApplicationContext(),
R.anim.slide_up);
mSplashThread1 = new Thread(){
@Override
public void run(){
try {
synchronized(this){
// Wait given period of time or exit on touch
wait(5000);
iv3.startAnimation(animSlideUp);
}
}
catch(InterruptedException ex){
}
finish();
}
};
// The thread to wait for splash screen events
mSplashThread = new Thread(){
@Override
public void run(){
try {
synchronized(this){
// Wait given period of time or exit on touch
wait(5000);
iv2.startAnimation(animSlideUp);
}
}
catch(InterruptedException ex){
}
finish();
mSplashThread1.start();
}
};
mSplashThread.start();
// The thread to wait for splash screen events
我用了两个线程来开始动画 PLZ帮助我,我是android的新手
答案 0 :(得分:2)
您可以为
使用不同的值android:startOffset="100"
在res / anim文件夹下的动画xml文件中,所有四个动画都有你想要使用的延迟(毫秒)值。如果您需要有关如何使用xml动画的帮助,here是一个供您参考的教程。
答案 1 :(得分:0)
您可以使用AnimationListener。 请尝试以下代码:
@Override
public void onClick(View v) {
animSlideUp = AnimationUtils.loadAnimation(getApplicationContext(),
R.anim.slide_up);
animSlideUp.setAnimationListener(new AnimationListener() {
@Override
public void onAnimationStart(Animation animation) {
// TODO Auto-generated method stub
}
@Override
public void onAnimationRepeat(Animation animation) {
// TODO Auto-generated method stub
}
@Override
public void onAnimationEnd(Animation animation) {
animSlideUp.setAnimationListener(null);
iv3.startAnimation(animSlideUp);
}
});
iv2.startAnimation(animSlideUp);
}