2013-06-28 176 views
0

我知道設置layout_width(或高)結合layout_weight到0dp在LinearLayout中,因爲回答這個問題的影響:設置layout_width(高度)0dp內的RelativeLayout

Why is 0dp considered a performance enhancement?

然而,在對Android開發者指南這裏

http://developer.android.com/guide/topics/ui/layout/relative.html

爲什麼他們設置Spinner的layout_width到0dp示例代碼?那麼背後的原因或訣竅是什麼?我的猜測是Spinner的水平位置已經可以由相對屬性確定,所以他們只是將其指定爲0dp,原因與上述情況相同。但是,我似乎無法找到關於此的實際文檔,所以它仍然有點令人困惑。

回答

-2

我們使用0dp而與layout_weight使用,因爲它會忽略該屬性,它會爲每layout_weight ..

1

我已經看到了這一招了幾個項目過,原因是完全一樣的,爲什麼他們在LinearLayout中使用「weight」來實現它,但這裏的關鍵屬性是:android:layout_toLeftOf="@+id/times"它與「weight」與線性佈局所做的操作完全相同,所以這是一種說法,將所有剩餘的空間從android:layout_alignParentLeft="true"android:layout_toLeftOf="@+id/times"沒有硬編碼任何特定的寬度...

關心!

3

當子視圖錨定在兩側(在RelativeLayout中)時,寬度將被忽略。在這種情況下,Spinner知道它的寬度,因爲

android:layout_alignParentLeft="true" 
android:layout_toLeftOf="@+id/times" 
相關問題