2012-02-17 26 views
0

當應用程序打開時我希望圖像立即出現並保持靜止5秒鐘,然後在這5秒鐘後圖像滑落屏幕左側,而不是我的圖像看起來像我想要的,但只要它出現,它立即開始滑出屏幕,我想實現這個動畫的代碼,而不是在XML。感謝任何建議,謝謝。想要在我的Android應用程序中停留5秒鐘,然後向左滑出屏幕

package your.package2.test3; 

import android.app.Activity; 
import android.os.Bundle; 
import android.view.animation.AnimationSet; 
import android.view.animation.TranslateAnimation; 
import android.widget.ImageView; 

public class Test3Activity extends Activity { 

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 

    ImageView img = (ImageView) findViewById(R.id.img1); 

    AnimationSet animSet = new AnimationSet(true); 

    TranslateAnimation Anim1 = new TranslateAnimation(0,0,0,0); 
    Anim1.setDuration(5000); 
    TranslateAnimation Anim2 = new TranslateAnimation(0,-300,0,0); 
    Anim2.setDuration(2000); 
    animSet.addAnimation(Anim1); 
    animSet.addAnimation(Anim2); 
    img.startAnimation(animSet); 
    } 
} 

回答

1

我想不出任何創建一個線程只是爲了睡一個持續時間是一個好主意。請嘗試使用postDelayed

img.postDelayed(new Runnable() { 
    public void run() { 
     TranslateAnimation anim = new TranslateAnimation(0,-300,0,0); 
     anim.setDuration(2000); 
     img.startAnimation(anim); 
    } 
}, 5000); 
0

使用線程顯示圖像和Thread.sleep(5000)方法。我認爲這實際上是做這種事情的最佳實踐。

0
Thread timer = new Thread() { 
     public void run(){ 
      try{ 
       sleep(5000); 
      } catch (InterruptedException e){ 
       e.printStackTrace(); 
      }finally{ 
       Intent openStartingPoint = new Intent("your.package2.test3.A New Class"); 
       startActivity(openStartingPoint); 
      } 
     } 
    }; 
    timer.start(); 
相關問題