通过正则方法限制
public static String (String str) throws PatternSyntaxException { //只允许汉字 String regEx = "[^\u4E00-\u9FA5]"; Pattern p = Pattern.compile(regEx); Matcher m = p.matcher(str); return m.replaceAll("").trim(); }
然后在
et.addTextChangedListener(new TextWatcher() { String str; @Override public void beforeTextChanged(CharSequence s, int start, int count, int after) { } @Override public void onTextChanged(CharSequence s, int start, int before, int count) { String strs=et.getText().toString(); str = allowChinese(strs.toString()); if (!strs.equals(str)) { et.setText(str); et.setSelection(str.length()); } } @Override public void afterTextChanged(Editable editable) { } });