2010-04-15 67 views

回答

3

大小取決於連接LinearLayout與其父項的LayoutParams

+0

我使用下面的代碼來設置的LinearLayout的大小時調用公共無效的onCreate(捆綁savedInstanceState); LinearLayout.LayoutParams layout = new LinearLayout.LayoutParams(w,h); LinearLayout.LayoutParams layout = new LinearLayout.LayoutParams(w,h); LinearLayout.LayoutParams layout = new LinearLayout.LayoutParams(w,h); layout.height = h; layout.width = w; linearLayout.setLayoutParams(layout); linearLayout.setYardageActivity(this); 上面的代碼在第一時間正常工作。然後當它運行時,再次調用上面的代碼。沒有運氣。它和舊的一樣大小。 你能推薦任何編碼來糾正上面的代碼嗎? 謝謝。 – Ferdinand 2010-04-16 01:58:55

+0

夥計們有什麼建議嗎? – Ferdinand 2010-04-16 05:21:27

3

這是我該怎麼辦:

// get element I want to resize 
LinearLayout myBar = (LinearLayout) findViewById(R.id.infopanel_graph); 

// get layout parameters for that element 
ViewGroup.LayoutParams params = myBar.getLayoutParams(); 

// change width of the params e.g. 50dp 
params.width = 50; 

// initialize new parameters for my element 
myBar.setLayoutParams(new LinearLayout.LayoutParams(params)); 
+0

當我跑上面的代碼。它在最後一行墜毀。我們不需要調用setLayoutParams。當你說params.width = 50時,那麼多的寬度被分配給LinearLayout。 – 2013-03-23 18:38:41