Можно ли сделать эту анимацию для Android с помощью ViewPager?

Мне нужно сделать 2 экрана с пользовательской анимацией, как описано ниже:


           Экран 1 Экран 2
  ----------------------------- --------------------- ---------
 |  |  |  |  |  |
 |  |  |  |  |  |
 |  |  |  |  |  |
 |  |  |  |  |  |
 |  |  |  |  |  |
 |  |  |  |  |  |
 |  |  |  |  |  |
 |  |  |  |  |  |
 |  Список 1 |  Список2 |  ---------> |  Список 3 |  Список 4 |
 |  |  |  |  |  |
 |  |  |  |  |  |
 |  |  |  |  |  |
 |  |  |  |  |  |
 |  |  |  |  |  |
 |  |  |  |  |  |
 |  |  |  |  |  |
 |  |  |  |  |  |
 |  |  |  |  |  |
  ----------------------------- --------------------- ---------
  • Пользователь делает длинное касание к элементу в списке 1 и слайды слева направо.
  • Вид, содержащий список 1, перемещается слева направо (до конца экрана) и исчезает. Отображается экран 2.

Можно ли сделать эту анимацию с помощью ViewPager ? Если да, то как?

Я хотел бы сделать это через ViewPager потому что я использую Fragment довольно широко, и я уже реализовал множество экранов в качестве фрагментов.

Если кто-то нуждается в разъяснении анимации или пользовательского интерфейса, пожалуйста, дайте мне знать.

Обновление : я смог реализовать оба экрана в одном действии, которое я здесь частично объяснил. Я могу реализовать то же самое в одном фрагменте. Но возможность реализовать, поскольку различные Fragment s в ViewPager все равно помогут.

Solutions Collecting From Web of "Можно ли сделать эту анимацию для Android с помощью ViewPager?"

ViewPager, тоже я, кажется, излишний. Если вы не хотите добавлять дополнительные экраны позже или какое-либо другое требование. Для этих простых экранов вы можете сделать это с помощью ActivityAnimations. Если вы ставите Screen1 и Screen2 в отдельную активность, вы можете анимировать действия, используя простые стили. Вам не нужно кодировать, просто определите стили Enter и Exit для своих действий, и они будут выполнены.

Итак, если у вас нет другой причины использовать ViewPager, вы можете добиться того же эффекта следующим (не тестированным):

Android Manifest.xml

 <activity android:name=".Screen1" android:theme="@style/Animated"></activity> <activity android:name=".Screen2"></activity> 

Ваши темы.xml

 <resources> <style name="Animated"> <item name="android:windowAnimationStyle">@style/Animation.ScreenAnimation</item> </style> </resources> 

Наконец, в вашем файле styles.xml

 <style name="Animation"></style> <style name="Animation.ScreenAnimation" parent="android:style/Animation.Activity"> <item name="android:activityOpenEnterAnimation">@anim/slide_in_right</item> <item name="android:activityOpenExitAnimation">@anim/slide_out_left</item> <item name="android:activityCloseEnterAnimation">@anim/slide_out_left</item> <item name="android:activityCloseExitAnimation">@anim/slide_in_right</item> </style> 

Раньше я использовал вертикальные ListViews внутри ViewPagers. Как насчет просмотра горизонтального списка прокрутки внутри вашего ViewPager?