Est-il possible de faire cette animation d'écran Android avec un ViewPager?

Je dois créer 2 écrans avec une animation personnalisée comme expliqué ci-dessous:


           Écran 1 Écran 2
  ----------------------------- --------------------- ---------
 |  |  |  |  |  |
 |  |  |  |  |  |
 |  |  |  |  |  |
 |  |  |  |  |  |
 |  |  |  |  |  |
 |  |  |  |  |  |
 |  |  |  |  |  |
 |  |  |  |  |  |
 |  Liste 1 |  Liste2 |  ---------> |  Liste 3 |  Liste 4 |
 |  |  |  |  |  |
 |  |  |  |  |  |
 |  |  |  |  |  |
 |  |  |  |  |  |
 |  |  |  |  |  |
 |  |  |  |  |  |
 |  |  |  |  |  |
 |  |  |  |  |  |
 |  |  |  |  |  |
  ----------------------------- --------------------- ---------
  • L'utilisateur apporte une touche longue sur un élément de la liste 1 et glisse de gauche à droite.
  • La vue contenant la liste 1 se déplace de gauche à droite (jusqu'à la fin de l'écran) et s'efface. L'écran 2 est affiché.

Est-il possible de faire cette animation à l'aide de ViewPager ? Si oui, comment?

  • Android Studio ne parvient pas à déboguer avec l'erreur org.gradle.process.internal.ExecException
  • Autorisations de localisation Android
  • Ajouter un rembourrage / marge à un Spannable
  • Obtenir des chaînes à partir d'un curseur dans Android?
  • Impossible d'exécuter Android Studio sur Yosemite
  • Comment puis-je exécuter des commandes Linux sur un appareil Android?
  • J'aimerais le faire via ViewPager car j'utilise Fragment s beaucoup et j'ai mis en place de nombreux écrans comme fragments déjà.

    Si quelqu'un a besoin de précisions sur l'animation ou l'interface utilisateur, faites-le moi savoir.

    Mise à jour : j'ai pu implémenter les deux écrans dans une seule activité que j'ai expliqué en partie ici . Je peux implémenter la même chose dans un seul fragment. Mais être en mesure de mettre en œuvre en tant que différents Fragment s dans un ViewPager serait toujours utile.

  • Détecter la fin de ScrollView
  • Ne voit pas Google Play Services rev 15 dans SDK Manager (pour l'instant) pour Google Cast SDK
  • Afficher la date et l'heure dans les paramètres régionaux de l'utilisateur
  • Picasso se charge de la mauvaise image lors de l'utilisation du motif du porte-vue
  • Calcul de taille d'Appendice
  • Android: je n'obtiens pas de stacktrace, le téléphone se raccroche
  • 2 Solutions collect form web for “Est-il possible de faire cette animation d'écran Android avec un ViewPager?”

    ViewPager, moi aussi, semble être trop élevé. Sauf si vous souhaitez ajouter plus d'écrans plus tard, ou une autre exigence. Pour ces écrans simples, vous pouvez le faire avec ActivityAnimations. Si vous mettez Screen1 et Screen2 dans une activité distincte, vous pouvez animer les activités à l'aide de styles simples. Vous n'avez pas besoin de coder, il suffit de définir les styles Entrer et Quitter pour vos activités, et ils seront exécutés.

    Donc, sauf si vous avez une autre raison d'utiliser le ViewPager, vous pouvez effectuer le même effet par les éléments suivants (non testés):

    Android Manifest.xml

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

    Vos themes.xml

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

    Enfin, dans votre 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> 

    J'ai utilisé avec succès ListViews verticales à l'intérieur de ViewPagers avant. Que diriez-vous d'essayer une vue de liste déroulante horizontale à l'intérieur de votre ViewPager?

    coAndroid est un fan Android de Google, tout sur les téléphones Android, Android Wear, Android Dev et Android Games Apps.