这是我的代码,我试图连续添加几个按钮。它的工作正常,但这些按钮看起来太靠近了,我想将水平边距应用于按钮。但无法添加。为了达到这个目的,我尝试将按钮保持在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只是创建一个简单的圆形按钮。请告诉我,如果我也应该发布。
答案 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);