1. 程式人生 > >Android中的基礎----如何獲得LinearLayout佈局的高和寬

Android中的基礎----如何獲得LinearLayout佈局的高和寬

存在兩種情況:

1)由於LinearLayout是View的子類,因此可以使用View.getMeasuredWidth和View.getMeasuredHeight方法來獲取元件的寬度和高度。

View view =getLayoutInflater().inflate(R.layout.main,null);
LinearLayout linearlayout =(LinearLayout)view.findViewById(R.id.linearlayout);
//measure的引數為0即可
linearlayout.measure(0,0);
//獲取元件的寬度
int width=linearlayout.getMeasuredWidth();
//獲取元件的高度
int height=linearlayout.getMeasuredHeight();
(如果元件的寬度或高度設定為fill_parent或match_parent。使用View.getMeasuredWidth和View.getMeasuredHeight方法獲取的元件寬度和高度,當元件包含其他子元件時,所獲得實際值是這些元件所佔的最小寬度和最小高度。

2)如果想直接獲取佈局檔案定義的元件的高度和寬度,可以直接使用View.getLayoutParams().width和View.getLayoutParams().height。當寬度和高度fill_parent或match_parent或者wrap_content,會返回值是MATCH_PARENT、FILL_PARENT、WRAP_CONTENT。