如何使用ViewFlipper切换到特定视图?

54

我想要在ViewFlipper中切换到特定的视图。目前,ViewFlipper内有6个子项,我有一些用于导航的按钮。这与“新闻和天气”应用程序非常相似。

2个回答

108

调用setDisplayedChild(),传入你要显示的子View的基于0的索引。


25

看这个简单完整的例子android.widget.ViewFlipper。你可以使用它从XML创建不同的布局,然后像这样使用简单的方法在它们之间切换:

   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)

使用树形布局的XML示例:

     <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>

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接