2016-07-17 3 views

ответ

0

Используйте что-то подобное для размещения вашей деятельности в:

<FrameLayout 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 

    <FrameLayout 
     android:layout_width="match_parent" 
     android:layout_height="0dp" 
     android:layout_weight="1"> 

     <Button 
      android:layout_gravity="center" 
      android:layout_width="100dp" 
      android:layout_height="100dp" 
      android:onClick="openFragment"/> 
    </FrameLayout> 

    <FrameLayout 
     android:id="@+id/container" 
     android:layout_width="match_parent" 
     android:layout_height="0dp" 
     android:layout_weight="1"/> 
</FrameLayout> 

Тогда в вашей деятельности:

public void openFragment(View v) { 
    Fragment fragment = new YourFragment(); 
    fragment.setEnterTransition(android.R.transition.slide_bottom); 
    getSupportFragmentManager().beginTransaction() 
     .add(R.id.container, fragment) 
     .commit(); 
} 

Примечание: только для Апи

работы> = 21.

Вам нужно будет использовать FragmentTransaction.setCustomAnimations(), если вы хотите, чтобы поддерживали старые версии.

0

Вы можете использовать класс ObjectAnimator для создания анимаций для своих просмотров. Используя метод ofFloat с свойством translationY, вы можете достичь желаемого эффекта. Вам нужен API> = 11.

Смежные вопросы