在android studio中隐藏高度和宽度为零的View元素

时间:2015-12-10 19:49:43

标签: java android

我有两个ListView,我希望它们共享相同的布局位置,所以当我点击按钮时,一个ListView隐藏。 也许这是不可能的,或者有更好的方式像片段一样?

2 个答案:

答案 0 :(得分:1)

使用FrameLayout。此布局视图覆盖了两个视图。

<FrameLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent">

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

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

</FrameLayout>

用于显示第一页(即第一个ListView):

findViewById(R.id.list1).setVisibility(View.VISIBLE);
findViewById(R.id.list2).setVisibility(View.GONE);

第二页:

findViewById(R.id.list1).setVisibility(View.GONE);
findViewById(R.id.list2).setVisibility(View.VISIBLE);

答案 1 :(得分:1)

如果您不打算更改视图中的数据,

片段是执行此操作的简便方法。

按一下按钮

/*create fragment of the opposite view, probably through a boolean field and an if block
then*/
getSupportFragmentManager.beginTransaction().replace(/*your fragments*/).commit().

在你的onclicklistener中。