EditText输入类型=数字,如何显示用户":"

时间:2015-03-04 15:54:03

标签: android android-edittext

所以,我希望用户写下两个除以此符号的数字":"在EditText中。我已将TextWatcher添加到此EditText中,因此我可以看到用户正在键入的内容。

因此,这是我在WatTecherChanged中的观察者所拥有的。

@Override
public void afterTextChanged(Editable s) 
{
   String textToEdit = s.toString();
   if  (s.length()==2)
   {
      String h = s.toString();
      h = h+":";
      edit.setText(h);
      edit.setSelection(edit.getText().length()); 
   }

}

当用户输入超过2位数字时,我会添加":"到EditText。

这里我有问题。 此EditText的输入类型为"数字", 所以,只有数字可以在那里和":"不是数字。

小例子: 用户键入24. afterTextChanged得到它并添加set" 24:"。 24是一个数字," 24:"是一个字符串。

所以,现在我已经" 24:"当我尝试从EditText中删除某些内容时,我会收到致命的错误。

还有其他方式展示":"在我的EditText?或者我做错了什么?

1 个答案:

答案 0 :(得分:4)

尝试将android:digits="0,1,2,3,4,5,6,7,8,9,:"放在EditText的

*编辑: 实际上这可能是android:digits="0123456789:":p