我正在尝试执行一个小代码,其条件是如果布尔值设置为true,则只有所有三个亲属都应出现在用户界面中。如果设置为false,则只显示两个布局。我能做到这一点。
我的问题是当我检查条件并将View.INVISIBLE
条件设置为layout2时,间隙出现在布局1和3之间。
我怎样才能消除这个差距?我的布局是用XML创建的:
<RelativeLayout
android:id="@+id/rl_one"
android:layout_width="wrap_content"
android:layout_height="40dp"
android:layout_marginLeft="20dp"
android:layout_marginTop="10dp" />
<RelativeLayout
android:id="@+id/rl_two"
android:layout_width="wrap_content"
android:layout_height="40dp"
android:layout_below="@+id/rl_one"
android:layout_marginLeft="20dp"
android:layout_marginTop="10dp" />
<RelativeLayout
android:id="@+id/rl_three"
android:layout_width="wrap_content"
android:layout_height="40dp"
android:layout_below="@+id/rl_two"
android:layout_marginLeft="20dp"
android:layout_marginTop="10dp" />
谢谢。
答案 0 :(得分:3)
您必须使用View.GONE代替View.INVISIBLE。
答案 1 :(得分:1)
您的代码中有2项更改
layout_height="wrap_content"
View.INVISIBLE
替换为View.GONE
如果您使用View.INVISIBLE
,那么您的视图只是隐身,但您可以看到您的用户界面之间存在差距,如果您使用View.GONE
,那么您的用户界面看起来没有任何差距:)