0

我有一个在 layout.xml 文件中加载一些布局的活动。第一个 LinearLayout 将所有视图托管在一起。第二个线性布局将两个标签放在一起。相对布局包含一些标签和一个在加载时填充项目的 ListView。我想通过实现相对布局到另一个布局的“转换”来改进导航,而不影响活动中的其他布局。换句话说,当单击由 ListView (OnItemClickListener) 填充的行之一时,此事件侦听器将当前的 RelativeLayout 替换为新的 Layout。

有什么想法可以实现吗?

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >

    <LinearLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:paddingTop="10dp"
        android:paddingBottom="10dp"
        android:background="#FFDECE"
        android:orientation="horizontal" >

        <TextView
            android:id="@+id/textView1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginLeft="5dp"
            android:text="Date"
            android:layout_weight="0.5"
            android:textAppearance="?android:attr/textAppearanceLarge" />

        <TextView
            android:id="@+id/textView2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Gang Code"
            android:layout_weight="1.0"
            android:textAppearance="?android:attr/textAppearanceLarge" />

    </LinearLayout>

    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:paddingBottom="10dp">

        <TextView
            android:id="@+id/tvEmpyName"
                ....

    </RelativeLayout>

    <ListView
        android:id="@+id/lvATRDisplay"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" >
    </ListView>

</LinearLayout>
4

1 回答 1

0

您可以为此使用ViewFlipper。并使用setDisplayedChild(int)来显示特定的布局,即孩子

例如

setDisplayChild(0);
于 2012-12-17T04:34:28.883 回答