2012-02-17 6 views
0

アプリが開くとすぐに画像が表示され、5秒間静止したままにしてから5秒後に画像をスライドさせたい私はそれを望むように私のイメージが表示されますが、表示されるとすぐに画面外に滑り始めます。このアニメーションはxmlではなくコードで実現したいと思います。何かアドバイスをありがとう、ありがとう。アンドロイドアプリで画像を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(); 
関連する問題