1

我想要一个只有 2 列的方形按钮布局,很像 Windows Phone 7 的开始屏幕。

但是,我不想制作自己的自定义按钮、使用库或使用固定值(因为这最终会导致密度不一致)。我只想使用样式和 XML 来实现这一点,并且我希望解决方案与密度无关。

我见过一个应用程序(Apollo)实现了这一点,但我不知道如何。

有什么办法可以做到这一点,还是我被迫覆盖 onMeasure?

4

1 回答 1

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);
于 2012-11-08T14:38:34.397 回答