2013-07-25 38 views
3

我嘗試設置2個佈局之間的自定義動畫。LayoutTransition定製的過渡

public class MainActivity extends FragmentActivity { 

    View menu = null; 
    ViewGroup parent = null; 

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

     //initialize the container and his parent 
     menu = findViewById(R.id.menu_model); 
     parent = (ViewGroup) menu.getParent(); 

     //set transition 
     LayoutTransition lt = new LayoutTransition(); 
     lt.enableTransitionType(LayoutTransition.CHANGING); 
     parent.setLayoutTransition(lt); 

     restoreMenu(null); 
    } 

    //display second menu 
    public void changeMenu(View view) { 

     int index = parent.indexOfChild(menu); 
     View old = menu; 
     menu = getLayoutInflater().inflate(R.layout.menu_2, parent, false); 
     parent.addView(menu, index); 
     parent.removeView(old); 
    } 

    //display first menu 
    public void restoreMenu(View view) { 

     int index = parent.indexOfChild(menu); 
     View old = menu; 
     menu = getLayoutInflater().inflate(R.layout.menu_1, parent, false); 
     parent.addView(menu, index); 
     parent.removeView(old); 
    } 
} 

正如你可以看到我使用LayoutTransitionLayoutTransition.CHANGING效果。 但我想它看起來像這樣:

我的老菜單離開的左側和我的新菜單從右邊過來。

你有任何想法如何,我能做到這一點? LayoutTransition可以做到嗎?

+0

我的最後一個職位可以幫助你http://stackoverflow.com/questions/ 17852481/Android的滑入,滑出式換活動/ 17852714#17852714 –

+0

謝謝,但它的使用2個活動之間,我期待爲2次 – nsvir

+0

之間的動畫你找到一個解決的辦法? –

回答