2012-11-08 75 views
1

我想要一個只有2列的正方形大小的按鈕佈局,非常像Windows Phone 7的開始屏幕。但是,我不想製作自己的自定義按鈕,使用庫或使用固定值(因爲這會導致密度不一致)。我只想使用樣式和XML來實現這一點,我希望解決方案是密度獨立的。方形按鈕Android

我見過一個應用程序(阿波羅),實現了這一點,但我不知道如何。

有沒有辦法做到這一點,或者我不得不重寫onMeasure?

回答

1

如果要根據屏幕大小更改按鈕的高度和寬度,可以在活動中執行此操作。

WindowManager w = getWindowManager(); 
Display d = w.getDefaultDisplay(); 
     int sw = d.getWidth(); //Gives the screen width and height 
     int sh = d.getHeight(); 

用這個來設置按鈕的高度和寬度。使用包含該按鈕的佈局。這裏我使用了線性佈局作爲例子。

LinearLayout.LayoutParams params = button.getLayoutParams(); 
params.width = sw-padding; 
params.heigth=sh; 
button.setLayoutParams(params); 
+0

我知道所有這一切。我只想要一個按鈕,其寬度等於屏幕的一半減去填充,其高度等於其寬度。你的回答沒有給我這個。 – razielsarafan

+0

@ santirivera92:我編輯了答案。 – Ashwin