相关疑难解决方法(0)

以编程方式在LinearLayout中设置边距

我正在尝试使用Java(而不是XML)创建一个LinearLayout,其中的按钮可以填充屏幕并具有边距.这是没有边距的代码:

LinearLayout buttonsView = new LinearLayout(this);
buttonsView.setOrientation(LinearLayout.VERTICAL);
for (int r = 0; r < 6; ++r) {
    Button btn = new Button(this);
    btn.setText("A");

    LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.FILL_PARENT, LinearLayout.LayoutParams.FILL_PARENT); // Verbose!
    lp.weight = 1.0f; // This is critical. Doesn't work without it.
    buttonsView.addView(btn, lp);
}

ViewGroup.LayoutParams lp = new ViewGroup.LayoutParams(ViewGroup.LayoutParams.FILL_PARENT, ViewGroup.LayoutParams.FILL_PARENT);
setContentView(buttonsView, lp);
Run Code Online (Sandbox Code Playgroud)

这样工作正常,但你怎么给按钮边距,所以它们之间有空间?我尝试过使用LinearLayout.MarginLayoutParams,但是没有weight成员,所以没有用.如果你lp在它的构造函数中传递它也不起作用.

这不可能吗?因为它确实看起来,并且它不会是第一个Android布局任务,你只能用XML做.

java layout android margin view

260
推荐指数
8
解决办法
33万
查看次数

以编程方式将属性(边距,重力等)设置为Android视图(不含XML)

我需要在我的.java活动类中创建一个GUI(布局+视图)(我知道它更灵活,更易于使用.xml布局文件,但我现在不想使用它).

我找不到任何setGravity()(但是一个"Gravity"对象,我无法想象如何使用)或任何set setMargin()方法的"View"对象.

最简单的方法是什么?

感谢名单.

user-interface android

5
推荐指数
2
解决办法
8200
查看次数

标签 统计

android ×2

java ×1

layout ×1

margin ×1

user-interface ×1

view ×1