2012-08-28 31 views
3

我有一個啓動畫面。我只希望它等待1或2秒,然後再進行下一個活動。 我明白有很多方法,包括處理程序類和java.util.timer實現。但是,這是最簡單和最輕的方式。提前Thanx。如何在幾秒鐘內轉移到其他活動?

+0

這個怎麼樣? http://stackoverflow.com/questions/11455455/splash-screen-alpha-animation-in-android/11456132#11456132 – fiddler

+0

我沒有爲這件事做任何動畫或重複操作。這就是爲什麼我要求一個更簡單的解決方案。在2秒後進入下一個屏幕。 – Abhinav

回答

14

使用下面的代碼。

Splash_Screen_Activity.java

public class Splash_Screen_Activity extends Activity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     // TODO Auto-generated method stub 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.splash_screen); 

     final Handler handler = new Handler(); 
     handler.postDelayed(new Runnable() { 
      public void run() { 
       // TODO: Your application init goes here. 
       Intent mInHome = new Intent(Splash_Screen_Activity.this, InvoiceASAPTabActivity.class); 
       Splash_Screen_Activity.this.startActivity(mInHome); 
       Splash_Screen_Activity.this.finish(); 
      } 
     }, 3000); 
    } 
} 
+1

那就是我在說的。像魅力一樣工作。非常感謝!! – Abhinav

0

下面是一個例子,它包括淡入淡出效果。

RES /過渡/ fade_in.xml

<?xml version="1.0" encoding="utf-8"?> 
<alpha 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:interpolator="@android:anim/accelerate_interpolator" 
    android:fromAlpha="0.0" 
    android:toAlpha="1.0" 
    android:duration="2000" /> 

RES /過渡/ fade_out.xml

<alpha 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:interpolator="@android:anim/accelerate_interpolator" 
    android:fromAlpha="1.0" 
    android:toAlpha="0.0" 
    android:duration="2000" /> 

MainActivity.class

public class MainActivity extends AppCompatActivity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 

     final android.os.Handler handler = new android.os.Handler(); 
     handler.postDelayed(new Runnable() { 
      @Override 
      public void run() { 
       Intent intent = new Intent(MainActivity.this, SecondActivity.class); 
       startActivity(intent); 
       overridePendingTransition(R.transition.fade_in,R.transition.fade_out); 
      } 
     }, 3000); 
    } 

} 

有關完整應用示例(具有更多功能),請檢查here