您的位置:首页 > 移动开发 > Android开发

【Android】按钮设置字母不全部大写,button set text to lower case; android button settext lowercase programmably

2015-12-29 17:36 816 查看
一般情况下设置button的setText会使被设置的英文字符串全都变为大写,应该在button的xml属性中添加如下属性,才能得到想要的自定义的大小写效果:

android:textAllCaps="false"


或者在程序中设置:

mButton.setTransformationMethod(null);


我在apache.lang工具包中看到capitalize的源码,改良了一下,写了下面这个仅首字母大写的函数:

/**
* capitalize only the first char, the other chars in the string will be converted to lower case
* <p/>
* <pre>
* TextU.capitalizeOnlyFirstChar(null)  = null
* TextU.capitalizeOnlyFirstChar("")    = ""
* TextU.capitalizeOnlyFirstChar("cat") = "Cat"
* TextU.capitalizeOnlyFirstChar("cAtCh ME") = "Catch me"
* </pre>
* <p/>
* <p/>
* Created by KyleCe on 2015/12/23.
*
* @author KyleCe
* <a href="https://github.com/KyleCe">KyleCe@github</a>
*/
public static String capitalizeOnlyFirstChar(String str) {
int strLen;
if (str == null || (strLen = str.length()) == 0) {
return str;
}
return new StringBuilder(strLen)
.append(Character.toTitleCase(str.charAt(0)))
.append(str.substring(1).toLowerCase())
.toString();
}


have fun

转载署源-By-KyleCe:http://blog.csdn.net/KyleCeshen/article/details/50428143
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android