1

我从我正在工作的数据库中获取了一个小时值,但我无法更改它。

例如,该值可以是表示“18:00”的“1800”或表示“9:30”的“930”。此值出现在 EditText 上。

那么如何在该值显示在 EditText 之前在该值中插入“:”。

谢谢!

4

3 回答 3

2

根据您提供的格式,最后两个字符必须是分钟,因此您可以将其子串并在中间添加“:”。

String str = "1800";
final int len = str.length();
String formattedStr = str.substring(0, len - 2) + ":" + str.substring(len - 2, len); // 18:00
于 2013-09-10T02:27:54.090 回答
1

您还可以将 setText[] 与 character[] 属性一起使用

char[] your_addition = {':'};
//use setText(char[], int start, int length)
your_editext.setText(your_addition, 2, 1);

您还可以检查字符串的长度,以确保 int start 的值在长度为 4 时使用 2 和在长度为 3 时使用 1 正确。

希望这可以帮助

于 2017-03-02T12:16:22.247 回答
0

尝试拆分设置为编辑文本的字符串。使用 yourString.split(":");

于 2013-09-10T02:30:15.490 回答