2013-06-04 19 views
0

我在android中,我通過覆蓋setContentView在一個活動(只有一個活動)中製作一個動畫。我嘗試這一個,它的工作原理:滑動動畫時避免白色背景

@Override 
public void setContentView(int layoutResID) { 
    LayoutInflater inflator=getLayoutInflater(); 
    View view=inflator.inflate(layoutResID, null, false); 
    view.startAnimation(AnimationUtils.loadAnimation(this, android.R.anim.slide_in_left)); 
    super.setContentView(view); 
} 

問題是當動畫運行時,出現白色背景。如何避免白色背景(我想在動畫運行時顯示當前視圖而不是白色背景)。

在此先感謝。

回答

0

如果你正在試圖做的是動畫進入的活動,你應該使用overridePendingTransition。這是更改活動在啓動時將使用的動畫的標準方式。您可能還想在您的清單中將您的活動主題設置爲「@android:style/Theme.Translucent.NoTitleBar」,以刪除任何不需要的窗口背景以免與動畫混淆。

+0

只有一項活動。 2.沒有,所以我需要做的動畫,當我在一個活動調用的setContentView(),我嘗試這一個,但不工作: @覆蓋 \t公共無效的setContentView(INT layoutResID){ \t \t \t \t LayoutInflater充氣= getLayoutInflater(); \t \t View view = inflator.inflate(layoutResID,null,false); \t \t if(the_anim!= null)view.startAnimation(the_anim); \t \t overridePendingTransition(android.R.anim.slide_in_left,android.R.anim.slide_out_right); \t \t super.setContentView(view); \t \t the_anim = null; \t} –

+0

謝謝,那幫助我:) –