我想隐藏LinearLayout及其所有子视图而不占用任何空间。
通常GONE属性应该是word,但事实并非如此。
我有一个包含子项的LinearLayout但是如果我应用adUnitLayout.setVisibility(View.GONE);
,那么我的屏幕上仍然有一个空白区域(请在下面的屏幕上查看*)。
我想要隐藏第一个LinearLayout(@ + id / adUnit)及其所有子视图。
但是下面的代码可以使用。
LinearLayout adUnitLayout = (LinearLayout)itemView;
for(int i=0; i < adUnitLayout.getChildCount(); i++) {
adUnitLayout.getChildAt(i).setVisibility(View.GONE);
}
为什么简单的adUnitLayout.setVisibility(View.GONE);
不起作用?
这是我的布局
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/adUnit"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:padding="10dp"
android:background="@drawable/item_border_shadow">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:paddingBottom="10dp">
<ImageView
android:id="@+id/nativeAdIcon"
android:layout_width="50dp"
android:layout_height="50dp" />
<LinearLayout
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:paddingLeft="5dp">
<TextView
android:id="@+id/nativeAdTitle"
android:lines="1"
android:ellipsize="end"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="18sp"
android:textColor="@android:color/black"/>
<TextView
android:id="@+id/nativeAdBody"
android:lines="2"
android:ellipsize="end"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="15sp"
android:textColor="@android:color/black"/>
</LinearLayout>
</LinearLayout>
<ImageView
android:id="@+id/nativeAdImage"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:scaleType="centerCrop"
android:gravity="center"/>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:padding="5dp"
android:orientation="horizontal"
android:weightSum="5">
<LinearLayout
android:layout_width="0dp"
android:layout_weight="3"
android:layout_height="wrap_content"
android:orientation="vertical">
<RatingBar
android:id="@+id/nativeAdStarRating"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="?android:attr/ratingBarStyleSmall"
android:stepSize="0.1"
android:visibility="gone"
android:isIndicator="true" />
<TextView
android:id="@+id/nativeAdSocialContext"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:lines="2"
android:ellipsize="end"
android:textSize="15sp"
android:textColor="@android:color/black" />
</LinearLayout>
<Button
android:id="@+id/nativeAdCallToAction"
android:layout_width="0dp"
android:layout_weight="2"
android:layout_height="wrap_content"
android:gravity="center"
android:textSize="16sp"
android:visibility="gone" />
</LinearLayout>
</LinearLayout>