【问题标题】:How to insert text between characters in a EditText on Android?如何在 Android 上的 EditText 中的字符之间插入文本?
【发布时间】:2013-09-10 01:50:52
【问题描述】:
我正在从正在工作的数据库中获取 Hour 值,但我无法更改它。
该值可以是例如“1800”,表示“18:00”或“930”,表示“9:30”。该值出现在 EditText 上。
那么,如何在该值显示在 EditText 之前在该值中插入“:”。
谢谢!
【问题讨论】:
标签:
android
insert
position
android-edittext
character
【解决方案1】:
根据您提供的格式,最后两个字符必须是分钟,因此您可以将其子串并在中间添加“:”。
String str = "1800";
final int len = str.length();
String formattedStr = str.substring(0, len - 2) + ":" + str.substring(len - 2, len); // 18:00
【解决方案2】:
您也可以将 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 正确。
希望对你有帮助
【解决方案3】:
尝试拆分设置为编辑文本的字符串。使用 yourString.split(":");