2016-05-13 66 views
1

我一直在嘗試幾個月才能使活動轉換工作。我已經嘗試了很多方法,使用XML和樣式以及代碼,但都無濟於事。以下是我最近的嘗試。有誰知道我爲什麼不能出現任何過渡?未出現Android活動轉換

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

protected void addSlideTransitions() 
{ 
    getWindow().requestFeature(Window.FEATURE_CONTENT_TRANSITIONS); 
    Slide slide = new Slide(); 
    slide.setDuration(1000); 
    getWindow().setEnterTransition(slide); 
    getWindow().setExitTransition(slide); 
} 

回答

0

您必須以使用makeSceneTransitionAnimation創建的ActivityOptions包開始活動。

該類型的轉換也僅適用於同一任務(從N開始)。

0

試着這樣做,我相信這會對你有用。

public class MainActivity extends AppCompatActivity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     addSlideTransitions(); 

     setContentView(R.layout.activity_main); 

    } 



    @TargetApi(Build.VERSION_CODES.LOLLIPOP) 
    protected void addSlideTransitions() 
    { 
     getWindow().requestFeature(Window.FEATURE_CONTENT_TRANSITIONS); 
     Slide slide = new Slide(); 
     slide.setDuration(1000); 
     getWindow().setEnterTransition(slide); 
     getWindow().setExitTransition(slide); 
    } 
} 
+0

對不起,這次沒有解決,但謝謝你的嘗試! – Sparklellama

+0

你得到的實際錯誤是什麼? @Sparklellama – Lampard

+0

我沒有收到錯誤。我發現我總是得到默認的android活動轉換動畫,並且添加這個新的代碼沒有明顯的效果。記錄和斷點顯示代碼正在運行,但它似乎是無效的。 – Sparklellama

0

嘗試super.onCreate之前添加調用addSlideTransitions

@Override 
protected void onCreate(Bundle savedInstanceState) 
{ 
    addSlideTransitions(); 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.my_activity_layout); 
    .... 
} 
+0

對不起,這次沒有解決,但謝謝你的嘗試! – Sparklellama