esw*_*aat 0 android android-layout
我想创建圆形按钮。所以我从这里得到了如何在 Android 中获得圆形的提示。正如链接中提到的,按钮的高度和重量必须具有相同的大小才能形成圆形,否则它将是椭圆形。我们不能使用 wrap_content 因为它是椭圆形的。
购买问题是现在我动态创建按钮,我尝试将按钮的高度和宽度设置为相同,但我仍然得到椭圆形按钮而不是圆形。
我尝试通过 xml 文件保持按钮的重量和高度相同它的工作,但通过动态它不是。下面是代码。
for (int count = 1; count <= rowb; count++)
{
tblRow[count] = new TableRow(getApplicationContext());
tbl.addView(tblRow[count]);
for (int j = 1; j <= rowb; j++) {
String nameB=""+i;
btn[i] = new Button(getApplicationContext());
btn[i].setId(i);
btn[i].setText(nameB);
btn[i].setWidth(1);
btn[i].setHeight(1);
tblRow[count].addView(btn[i]);
btn[i].setOnClickListener(getOnClickDoSomething(btn[i],i));
i++;
}
}
notifyAllObservers();
move--;
}
Run Code Online (Sandbox Code Playgroud)
我也尝试过,但它也确实有效
TableLayout.LayoutParams lp = new TableLayout.LayoutParams(5,5);
btn[i].setLayoutParams(lp);
Run Code Online (Sandbox Code Playgroud)
有人可以让我知道问题是什么吗?我如何获得圆形页岩按钮而不是椭圆形?
您可以通过以下代码设置宽度和高度:
Button btnTag = new Button(this);
btnTag.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
tblRow.addView(btnTag);
Run Code Online (Sandbox Code Playgroud)
或者您也可以在其中设置 wrap_content 的 dp instend 。喜欢:
Button btnTag = new Button(this);
btnTag.setLayoutParams(new LayoutParams(30, 30));
tblRow.addView(btnTag);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6637 次 |
| 最近记录: |