0

有没有办法将第一个字符的按钮文本设置为大写字母并且所有文本都是大写?

布局:

<Button
    android:id="@+id/q1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textSize="13sp"
    android:textColor="#ffffff"
    android:background="@drawable/ic_btn_q_normal" />

活动:

final Button q1 = (Button) findViewById(R.id.q1);
q1.setText(answers[numbers.get(0)]);
    q1.setOnClickListener(new OnClickListener() {
        public void onClick(View v){

        q1.setBackgroundResource(R.drawable.ic_btn_q_right);

    }
});

answers[numbers.get(0)] 是我从数组列表中得到的文本。

我试过 q1.setAllCaps(true); 但这对我不起作用。

谢谢。

4

2 回答 2

2

您可以使用:WordUtils

方法:

大写(字符串 str)

将字符串中所有空格分隔的单词大写。

或:capitalizeFully(String str)

将字符串中所有空格分隔的单词转换为大写单词,即每个单词由一个标题字符和一系列小写字符组成。

于 2013-06-20T12:54:37.323 回答
1
final Button q1 = (Button) findViewById(R.id.q1);
String label = answers[numbers.get(0)];
StringBuilder sb = new StringBuilder();
sb.append( label .substring(0,1) );
sb.append( label .substring(1).toLowerCase() );
label = sb.toString();

q1.setText(label);
    q1.setOnClickListener(new OnClickListener() {
        public void onClick(View v){

        q1.setBackgroundResource(R.drawable.ic_btn_q_right);

    }
});

字符串转换代码取自:将 Java 字符串从全部大写(由下划线分隔的单词)转换为 CamelCase(无单词分隔符)的最简单方法是什么?

于 2013-06-20T12:54:34.513 回答