如何以编程方式设置layout_gravity?
问题内容:
我的问题很简单
如何以编程方式设置我的按钮layout_gravity?
我在互联网上找到了它,但它只是抛出了一个Nullpointer异常:
Button MyButton = new Button(this);
LinearLayout.LayoutParams lllp=(LinearLayout.LayoutParams)MyButton.getLayoutParams();
lllp.gravity=Gravity.RIGHT;
MyButton.setLayoutParams(lllp);
MyLinearLayout.addView(MyButton);
有什么办法吗?
问题答案:
Java
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.MATCH_PARENT);
params.weight = 1.0f;
params.gravity = Gravity.TOP;
button.setLayoutParams(params);
Kotlin
val params = LinearLayout.LayoutParams(
LinearLayout.LayoutParams.WRAP_CONTENT,
LinearLayout.LayoutParams.WRAP_CONTENT
).apply {
weight = 1.0f
gravity = Gravity.TOP
}
有关重力值以及如何设置重力,请检查“重力”。
基本上,您应该选择LayoutParams
依赖于父项。可以是RelativeLayout,LinearLayout
等等。