2013-06-19 191 views
1

image如何在運行時獲得佈局的高度和寬度?

這一形象,如何讓紅色框的高度和寬度在

所示的圖像 如何找到在運行時,而不是在XML文件

+0

您可以使用紅色的佈局getLayoutParams。在那裏你可以選擇獲得高度/寬度邊距等。 –

+0

我有兩個佈局,一個是頂部其他一個是紅色框中的紅色框我不會顯示列表視圖。請告訴我 –

回答

3

您可以使ListView作爲紅色佈局的子視圖。您不需要高度/寬度運行時間來實現此目的。只需在layout.xml中的紅色佈局中創建listview,並將fill_parent設置爲layout_height和layout_width。

對於防爆:

<LinearLayout android:id="@+id/redLayout"> 
    <ListView android:layout_height="fill_parent" 
      android:layout_width="fill_parent"/> 
</LinearLayout> 
+0

是如何工作的... –

0

看看在View docs上Android SDK網站。他們解釋不同的尺寸,複製版本batim這裏:

大小,填充和利潤

視圖的大小,寬度和高度表達。一個視圖 實際上擁有兩對寬度和高度值。

第一對稱爲測量寬度和測量高度。這些尺寸定義了視圖想要在其父代中有多大(有關更多詳細信息,請參閱 佈局)。測量的尺寸可以通過調用getMeasuredWidth()和getMeasuredHeight()來獲得。 。

第二對簡單地稱爲寬度和高度,有時也稱爲繪圖寬度和繪圖高度。這些尺寸定義了屏幕上的視圖的實際大小,在繪製時間和佈局之後。這些值可能但不一定與測量寬度 和高度不同。寬度和高度可以通過調用getWidth() 和getHeight()來獲得。

要衡量其尺寸,視圖會考慮其填充。 填充用視圖的左,頂,右和底部 部分的像素表示。填充可用於將特定數量的像素的視圖的內容抵消。例如,2 的左填充將會將視圖的內容推到左邊 邊緣的右側2個像素。填充可以使用setPadding(int,int,int,int)或setPaddingRelative(int,int,int,int)方法設置,並通過調用 getPaddingLeft(),getPaddingTop(),getPaddingRight(), getPaddingBottom ,getPaddingStart(),getPaddingEnd()。

儘管視圖可以定義填充,但它不提供任何支持邊距的 。但是,查看組提供了這樣的支持。 有關詳細信息,請參閱ViewGroup和ViewGroup.MarginLayoutParams。

相關問題