2011-06-09 21 views
1

高度和線性佈局的寬度動態我在XML中的LinearLayout已FILL_PARENT兩種高度和寬度... 現在我想動態改變高度和寬度... 我嘗試使用如何設置的android

_llChooseType.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT,getWindowManager().getDefaultDisplay().getHeight()-100)); 

但它給我java.lang.ClassCastException:android.view.ViewGroup $的LayoutParams 例外...

怎麼辦呢?

+0

不知道這所以這是一個評論,但如果我沒有記錯,你可以做getLayoutParams(),或在您的佈局本身類似的東西來得到它的正確的佈局PARAMS。 – Jason 2011-06-09 08:07:31

回答

6

使用這個..

new LinearLayout.LayoutParams(LayoutParams.FILL_PARENT,getWindowManager().getDefaultDisplay().getHeight()-100)); 
0

操作方法...... 類型:

_llChooseType.setLayoutParams(new Layo 

,然後按Ctrl + space_bar。 這會給你一個可供選擇的LayoutParams選項列表...選擇LinearLayout.LayoutParams並按原樣編寫其餘代碼。 這裏的問題是您使用的LayoutParams是ViewGroup.LayoutParams,它們不適用於線性佈局!

2

如果_llChooseType是的LinearLayout對象,然後我認爲你應該使用

new LinearLayout.LayoutParams(...); 

問候

紫藤陳

1

的setLayoutParams widht &高度只能有以下3個值:FILL_PARENT, MATCH_PARENT和WRAP_CONTENT。

您應該使用public void layout (int l, int t, int r, int b)實際更改已創建視圖/視圖組的佈局。