我正在开发一个小型Android应用程序,其中包含一些从Java代码动态创建的方形按钮。我正在使用Absolute.LayoutParams方法为它们提供宽度和高度,但我得到了弃用警告。
LayoutParams params = new LayoutParams(width,height, 0, 0);
button.setLayoutParams(params);
我也试过了:
button.setHeight(height);
button.setWidth(width);
但它不起作用。还有第三种方法可以轻松清洁吗?
提前谢谢!
答案 0 :(得分:3)
我认为会是
LayoutParams params = new LayoutParams(width,height);
button.setLayoutParams(params);
答案 1 :(得分:1)
使用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
总是很好的做法:)。