2013-07-28 59 views
0

我想在linearLayout的兩個子元素之間創建一個間隙。如何設置線性佈局子項之間的可縮放(加權)空間?

我不想用保證金或填充,因爲這將不縮放正確

,當我切換到橫向。

我更喜歡使用重量。但是,如何在它們之間創建一個虛擬(僅差距)視圖?

順便說一下,如果我沒有創建一個景觀XML和

改變設備的方向,從縱向到橫向會發生什麼?

更新1

我曾嘗試:

<LinearLayout 
    android:id="@+id/layout_information" 
    android:layout_width="0dp" 
    android:layout_height="fill_parent" 
    android:layout_weight="0.47" 
    android:orientation="vertical" 
    android:gravity="center" 
    > 

    <TextView 
     android:id="@+id/text_view_destination" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="\@ Home in" 
     android:textColor="@color/solid_white" 
     android:textSize="19sp" 
     android:textStyle="bold" /> 

    <View 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_weight="0.2"/> 

    <TextView 
     android:id="@+id/text_view_time" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:paddingLeft="40dp" 
     android:textColor="@color/solid_white" 
     android:textSize="25sp" 
     android:textStyle="normal" /> 
</LinearLayout> 

但隨後

我得到警告有關嵌套權重的表現。

我得到運行時錯誤圖紙我的小工具

+0

嘗試用0dp替換您的「wrap_content」高度.. ;-) –

回答

0

時,如果您正在爲ICS及以上,使用Space部件:

<Space 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:layout_weight="YourWeight"/> 

http://developer.android.com/reference/android/widget/Space.html

否則,你可以只使用一個空的View

您可能還會考慮在您的情況下使用RelativeLayout會更有效。

當設備旋轉並且您沒有景觀的專用佈局時,將使用您的肖像。

+0

爲什麼'RelativeLayout'更高效?我仍然需要創建空視圖 –

+0

如果有其他'Views'可以用作'Views''的錨點,則不必創建空視圖。但是,我不知道你的確切佈局結構,所以這只是一個建議。 –

+0

我覺得'match_parent'與'weight'屬性衝突 –

相關問題