如何在Android应用程序的TextView中将文本的第一个字母大写

新手上路,请多包涵

我也不是指 textInput。我的意思是,一旦您在 TextView 中有静态文本(从对用户输入数据的数据库调用填充(可能未大写)),我如何确保它们是大写的?

谢谢!

原文由 Allen Gingrich 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 454
2 个回答

我应该能够通过标准的 java 字符串操作来实现这一点,而不是 Android 或 TextView 特定的。

就像是:

 String upperString = myString.substring(0, 1).toUpperCase() + myString.substring(1).toLowerCase();

尽管可能有一百万种方法可以实现这一目标。请参阅 字符串 文档。

编辑 我添加了 .toLowerCase()

原文由 Cheryl Simon 发布,翻译遵循 CC BY-SA 4.0 许可协议

//Capitalize the first letter of the words
public String Capitalize(String str) {
    String[] arr = str.split(" "); //convert String to StringArray
    StringBuilder stringBuilder = new StringBuilder();

    for (String w : arr) {
        if (w.length() > 1) {
            stringBuilder.append(w.substring(0, 1).toUpperCase(Locale.US) + w.substring(1).toLowerCase(Locale.US) + " ");
        }
    }
    return stringBuilder.toString().trim();
}

原文由 trylearning2022 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题