2012-05-14 59 views
0

我正在嘗試做一個小代碼,其條件是如果布爾值設置爲true,則只有所有三個親屬都應該出現在用戶界面中。如果它設置爲false,則只應顯示兩個佈局。我能夠做到這一點。java代碼中的相對佈局

我的問題是,當我檢查的條件,並設置View.INVISIBLE條件的佈局2,差距佈局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" /> 

謝謝。

回答

3

你應該不得不使用View.GONE來代替View.INVISIBLE。

+0

+1同意去了,而不是INVISIBLE。 –

1

做2發生在你的代碼

  1. layout_height="wrap_content"在XML
  2. View.GONE

取代View.INVISIBLE如果你正在使用View.INVISIBLE那麼你的視圖僅僅是看不見的,但你可以看到差距的UI和如果你使用View.GONE那麼你的UI看起來沒有任何差距:)