如何在Android中为按钮设置宽度和高度?
问题描述:
我正在开发一个小的Android应用程序,它有一些从Java代码动态创建的方形按钮。我使用Absolute.LayoutParams方法给他们的宽度和高度,但我得到了弃用警告。如何在Android中为按钮设置宽度和高度?
LayoutParams params = new LayoutParams(width,height, 0, 0);
button.setLayoutParams(params);
我想这太:
button.setHeight(height);
button.setWidth(width);
但它无法正常工作。还有第三种方法可以轻松清洁吗?
预先感谢您!
答
使用的AbsoluteLayout
,你需要使用AbsoluteLayout.LayoutParams
,而不是ViewGroup.LayoutParams
。
AbsoluteLayout.LayoutParams params = new AbsoluteLayout.LayoutParams(width, height, 0, 0);
button.setLayoutParams(params);
还要注意设置View
的宽度和高度的正确方法是通过LayoutParams
这样做。请参阅ViewGroup.LayoutParams
和View.getLayoutParams()
。您不必像第二个示例中那样手动设置宽度和高度。
但是,我强烈建议您使用RelativeLayout
(或LinearLayout
等)代替AbsoluteLayout
,并且这是一个很好的理由。现在有很多不同尺寸的Android设备,AbsoluteLayout
只是不会在所有设备上工作。从来没有,曾经使用AbsoluteLayout
总是很好的做法:)。
答
我认为这将是
LayoutParams params = new LayoutParams(width,height);
button.setLayoutParams(params);
如果你的视图布局是固定的,那么使用XML来完成所有这些也许是一个更好的主意。你的代码会看起来更漂亮(如果你愿意的话,以后可以更容易地做出更改)。 – 2012-01-19 01:55:06