不删除按钮文本

时间:2017-01-05 06:56:39

标签: android android-layout android-fragments

我编写了一个代码来更改按钮的minWidth,这样我就可以摆脱按钮文本周围的填充。

for(int i=0;i<26;i++){
    Button alphabet = new Button(getContext());
    alphabet.setText(""+(char)('A'+i));
    alphabet.setMinWidth(0);
    allAlphabets.addView(alphabet);
}

我在每个按钮上都有一个字母,最后动态地将它添加到布局中。由于填充,它占用了很多空间,因为我已经将最小宽度设置为0,但它仍然不起作用。它显示相同的默认按钮。 请帮忙。

4 个答案:

答案 0 :(得分:2)

因为您希望可点击的视图看起来像带文字的按钮

您可以使用按钮或其中的cardview和textview制作xml布局

然后像这样添加:

Button alphabetButton = LayoutInflater.from(context).inflate(R.layout.alphabet_layout);

所以它比代码设计更好,它现在是一个布局,所以你可以根据需要修改布局

您也可以在alphabet_layout.xml中添加按钮

android:background="@null"

答案 1 :(得分:1)

您必须将LayoutParamsButton alphabet一起使用。

答案 2 :(得分:1)

请尝试设置按钮的填充,如

Button alphabet = new Button(getContext());
                alphabet.setText(""+(char)('A'+i));
                 alphabet.setPadding(0,0,0,0);
                allAlphabets.addView(alphabet);

答案 3 :(得分:0)

您可以使用以下代码进行设置:

LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LayoutParams.WRAP_CONTENT,
            LayoutParams.WRAP_CONTENT);
button.setLayoutParams(params);
button.setGravity(Gravity.CENTER_HORIZONTAL);
button.setTextSize(32);