无法通过代码在按钮上添加边距

时间:2016-12-23 12:01:58

标签: android button row margin

这是我的代码,我试图连续添加几个按钮。它的工作正常,但这些按钮看起来太靠近了,我想将水平边距应用于按钮。但无法添加。为了达到这个目的,我尝试将按钮保持在Linearlayout中并对其应用边距。但它以某种方式不显示任何按钮,当我注释掉这一行时,ll.setLayoutParams(lp);按钮可以再次看到,但没有任何余量。请让我知道如何在相距一定距离处制作按钮。

maintable = (TableLayout) findViewById(R.id.maintable);
TableRow tr = new TableRow(this);
for (int z = 0; z < 3; z++) {
LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT);
lp.setMargins(5, 5, 5, 5);
LinearLayout ll = new LinearLayout(this);
//ll.setLayoutParams(lp);
Button b = new Button(savedLists.this);
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(150, 150);
params.setMargins(0, 20, 0, 20);
b.setBackgroundResource(R.drawable.circular);
b.setText(Integer.toString(c));
b.setPadding(10,10,10,10);
ll.addView(b,params);
tr.addView(ll);
c++;
}
maintable.addView(tr);

R.drawable.circular只是创建一个简单的圆形按钮。请告诉我,如果我也应该发布。

1 个答案:

答案 0 :(得分:0)

您尚未在此处为按钮设置任何余量。你正在设置它的填充!以下是设置按钮边距的方法!

Button b = new Button(context); 
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(width, height); 
params.setMargins(top, left, bottom, right);
yourLinearLayout.addView(b,params);