Apparitions en cascade de différentes vues
YameFAZE
Messages postés
201
Date d'inscription
Statut
Membre
Dernière intervention
-
YameFAZE Messages postés 201 Date d'inscription Statut Membre Dernière intervention -
YameFAZE Messages postés 201 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Actuellement je fais apparaître l'ensemble de ma page d'un seul tenant grâce à
Ci-dessous le code java qui me permet actuellement de faire apparaître ma page :
Ci-dessous le code xml de mon activité :
Et pour finir ci-dessous la ressource de l'animation :
Actuellement je fais apparaître l'ensemble de ma page d'un seul tenant grâce à
alpha. Maintenant j'aimerais pousser un peu plus loin la chose et si possible faire apparaître en cascade, de haut en bas, les différentes vues de ma page.
Ci-dessous le code java qui me permet actuellement de faire apparaître ma page :
setContentView(R.layout.start_activity);
final Animation startActivity_animation = AnimationUtils.loadAnimation(this, R.anim.apparition);
final View animationStartActivity_affichage = findViewById(R.id.startActivity_conteneurScrollView);
startActivity_animation.setFillAfter(true);
animationStartActivity_affichage.startAnimation(startActivity_animation);
Ci-dessous le code xml de mon activité :
<?xml version="1.0" encoding="utf-8"?>
<!-- Conteneur parent. -->
<ScrollView
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/startActivity_conteneurScrollView"
tools:context="com.xxxxxxxxxx.Start"
style="@style/conteneurScrollView">
<!-- Conteneur enfant. -->
<LinearLayout style="@style/conteneurScrollView_enfant">
<!-- Logo. -->
<ImageView
android:id="@+id/startActivity_logo"
style="@style/conteneurImageView"/>
<!-- Bloc pseudo. -->
<LinearLayout style="@style/conteneurFormulaire">
<!-- Ensemble intitulé+champs du bloc pseudo. -->
<LinearLayout style="@style/blocFormulaire">
<!-- Intitulé du bloc pseudo. -->
<TextView
android:id="@+id/startActivity_blocPseudo_intitule"
android:text="@string/startActivity_blocPseudo_intitule"
style="@style/intituleFormulaire" />
<!-- Champs du bloc pseudo. -->
<EditText
android:id="@+id/startActivity_blocPseudo_champs"
style="@style/champsFormulaire" />
</LinearLayout>
<!-- Consignes du bloc pseudo. -->
<TextView
android:id="@+id/startActivity_blocPseudo_consignes"
android:text="@string/startActivity_blocPseudo_consignes"
style="@style/consignesFormulaire" />
</LinearLayout>
<!-- Bloc mot de passe. -->
<LinearLayout style="@style/conteneurFormulaire">
<!-- Ensemble intitulé+champs du bloc mot de passe. -->
<LinearLayout style="@style/blocFormulaire">
<!-- Intitulé du bloc mot de passe. -->
<TextView
android:id="@+id/startActivity_blocMotDePasse_intitule"
android:text="@string/startActivity_blocMotDePasse_intitule"
style="@style/intituleFormulaire" />
<!-- Champs du bloc mot de passe. -->
<EditText
android:id="@+id/startActivity_blocMotDePasse_champs"
style="@style/champsFormulaire" />
</LinearLayout>
<!-- Consignes du bloc mot de passe. -->
<TextView
android:id="@+id/startActivity_blocMotDePasse_consignes"
android:text="@string/startActivity_blocMotDePasse_consignes"
style="@style/consignesFormulaire" />
</LinearLayout>
<!-- Bouton connexion. -->
<Button
android:id="@+id/startActivity_boutonConnexion"
android:text="@string/startActivity_boutonConnexion"
style="@style/bouton" />
<!-- Bouton inscription. -->
<Button
android:id="@+id/startActivity_boutonInscription"
android:text="@string/startActivity_boutonInscription"
style="@style/bouton" />
</LinearLayout>
</ScrollView>
Et pour finir ci-dessous la ressource de l'animation :
<?xml version="1.0" encoding="utf-8"?>
<set
xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/linear_interpolator">
<alpha
android:fromAlpha="0.0"
android:toAlpha="1.0"
android:duration="1357" />
</set>
A voir également:
- Apparitions en cascade de différentes vues
- Vue satellite en direct gratuit de ma maison - Guide
- Liste déroulante en cascade - Guide
- Vues de profil insta - Guide
- Vues story instagram disparu ✓ - Forum Instagram
- Spectateurs de stories plus visible ✓ - Forum Instagram
4 réponses
Hello,
Tu veux faire apparaitre un à un tes champs automatiquement? Ou bien tu ferais apparaître un champ suite à une action utilisateur?
Attention! Trop d'animations tue l'animation! Il vaut mieux que tout s'affiche d'un coup nickel plutôt que d'avoir des animations "foireuses" ;)
Tu veux faire apparaitre un à un tes champs automatiquement? Ou bien tu ferais apparaître un champ suite à une action utilisateur?
Attention! Trop d'animations tue l'animation! Il vaut mieux que tout s'affiche d'un coup nickel plutôt que d'avoir des animations "foireuses" ;)
Oui j'aurais aimé faire apparaître les champs un par un indépendamment de l'utilisateur. Le même principe que mon code actuel mais adapté à une apparition en chaîne. Si c'est faisable je suppose que cela doit se faire avec un système d'ID. Initialisation de l'animation, sélection des différentes vues (TextView, ImageView... etc) avec leur ID, association de l'animation aux vues, lancement de l'animation. J'ai essayé de bricoler un peu le code pour voir ce que cela donne mais ça ne fonctionne pas. Soit c'est impossible à faire soit je m'y prends mal.
Soit c'est impossible à faire soit je m'y prends mal.J'ai bien une réponse à te donner...mais tu devrais la deviner toi-même
^^'.
Avec du temps, rien n'est impossible en programmation. Ta demande n'a rien de irréelle, il suffit d'enchainer les animations: quand l'une est terminée, tu lances la suivante. Si tu t'es documenté un peu, tu as du voir une callback onAnimationEnd() qui te notifie de la fin de l'anim.
Mais, encore une fois, trop d'animations tue l'animation. D'un point de vue utilisateur, j'ai envie d'avoir accès rapidement à l'information plutôt que de voir des animations "inutiles" dans tous les sens. Mais c'est à toi de voir.