我在我的应用中编辑了文本,只捕获十进制数字。 我已将输入类型设置为DECIMAL_NUMBERS。
问题是,如果用户放置例如0009,该怎么办? 我想阻止它,并在开始时删除零。
有什么想法吗?
答案 0 :(得分:3)
覆盖onTextChanged (CharSequence text, int start, int lengthBefore, int lengthAfter)
方法以更正用户输入并使用addTextChangedListener
答案 1 :(得分:0)
这是解决方案。 TNX。 :)
@Override
public void onTextChanged(CharSequence s, int start, int before,
int count) {
if (start == 0 && s.toString().equals("0"))
editText.setText("");
};
答案 2 :(得分:0)
您可以通过字符串regex
的{{1}}和replaceFirst
函数删除零
您可以在此处试用正则表达式:http://regexr.com?32f1o