48 votes

Comment passer à une certaine vue en utilisant ViewFlipper?

Je voudrais basculer vers certaines vues dans un ViewFlipper. Actuellement, j'ai 6 enfants dans le ViewFlipper. Et j'ai des boutons pour la navigation. C'est très similaire à l'application "Nouvelles et météo".

100voto

CommonsWare Points 402670

Appelez setDisplayedChild() , en passant l'index basé sur 0 de l'enfant View à afficher.

20voto

lory105 Points 1060

Voir cet exemple complet simple d' android.widget.ViewFlipper . Avec cela, vous pouvez créer une mise en page différente à partir du xml, puis basculer entre eux avec une méthode simple comme celle-ci:

    ViewFlipper viewFlipper = (ViewFlipper) findViewById(R.id.myViewFlipper);

   // you can switch between next and previous layout and display it
   viewFlipper.showNext();
   viewFlipper.showPrevious();

  // or you can switch selecting the layout that you want to display
  viewFlipper.setDisplayedChild(1);
  viewFlipper.setDisplayedChild(viewFlipper.indexOfChild(findViewById(R.id.secondLayout)
 

Exemple XML avec des arborescences:

      <ViewFlipper
            android:id="@+id/myViewFlipper"
            android:layout_width="match_parent"
            android:layout_height="match_parent" >

            <LinearLayout
                android:id="@+id/firstLayout"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:orientation="vertical" >
               [...]
            </LinearLayout>

            <LinearLayout
                android:id="@+id/secondLayout"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:orientation="vertical" >
               [...]
            </LinearLayout>

            <LinearLayout
                android:id="@+id/thirdLayout"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:orientation="vertical" >
              [...]
            </LinearLayout>
      </ViewFlipper>
 

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X