Android 在GridLayout中隐藏行

Android 在GridLayout中隐藏行,android,grid-layout,Android,Grid Layout,我在一个xml文件中创建了一个GridLayout,它有3列2行。 如何通过代码隐藏第二行 我试图为该行中的视图设置可见性,但第一列似乎尽可能扩展 <GridLayout android:id="@+id/lytInfo" android:layout_width="match_parent" android:layout_height="wrap_content

我在一个xml文件中创建了一个GridLayout,它有3列2行。 如何通过代码隐藏第二行

我试图为该行中的视图设置可见性,但第一列似乎尽可能扩展

    <GridLayout
                    android:id="@+id/lytInfo"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:alignmentMode="alignBounds"
                    android:columnCount="3"
                    android:columnOrderPreserved="false"
                    android:paddingTop="@dimen/padding.verySmall" >

                <TextView android:id="@+id/tvNameLabel"
                    android:ellipsize="end"
                    android:maxLines="1"
                    android:singleLine="true"
                    android:text="@string/name"
                    android:textColor="@color/black"
                    android:textSize="@dimen/text.normal" />

                <Space android:layout_width="@dimen/padding.veryVerySmall" android:id="@+id/tvNameSpace"/>

                <TextView
                    android:id="@+id/tvName"
                    android:ellipsize="end"
                    android:maxLines="1"
                    android:singleLine="true"
                    android:textColor="@color/darkRed"
                    android:textSize="@dimen/text.normal"
                    android:textStyle="bold" />

                <TextView
                    android:ellipsize="end"
                    android:maxLines="1"
                    android:singleLine="true"
                    android:text="@string/pwd"
                    android:textColor="@color/black"
                    android:textSize="@dimen/text.normal" />

                <Space android:layout_width="@dimen/padding.veryVerySmall" />

                <TextView
                    android:id="@+id/tvPwd"
                    android:ellipsize="end"
                    android:maxLines="1"
                    android:singleLine="true"
                    android:textColor="@color/darkRed"
                    android:textSize="@dimen/text.normal"
                    android:textStyle="bold" />


            </GridLayout>
如果将“View.GONE”替换为“View.INVISIBLE”,则行中的视图将不可见(不可见),但它们仍将被测量,并且GridLayout的行为将与它们仍然存在一样。使用GONE结果测量零,GridLayout将折叠第1行

    findViewById(R.id.tvName).setVisibility(View.INVISIBLE);
    findViewById(R.id.tvNameSpace).setVisibility(View.INVISIBLE);
    findViewById(R.id.tvNameLabel).setVisibility(View.INVISIBLE);

您可以删除这两个项目,就像在第二行中有两个项目一样,将它们从列表中删除并再次填充数据。它将解决您的问题,而且如果您不想丢失这些数据,请将它们放在另一个列表中,并随时获取它们。
    findViewById(R.id.tvName).setVisibility(View.INVISIBLE);
    findViewById(R.id.tvNameSpace).setVisibility(View.INVISIBLE);
    findViewById(R.id.tvNameLabel).setVisibility(View.INVISIBLE);