Android EditText : How to avoid user enter smileys

2019-06-24 01:58发布

问题:

I would like to avoid to the user to put a smiley with the keyboard into an EditText. Is it possible ?

回答1:

You can define your input type and only accept letters or change your keyboard type:

https://developer.android.com/training/keyboard-input/style.html

Or you can only accept some specific digits:

How to create EditText accepts Alphabets only in android?



回答2:

Editing answer from here.

This will allow only ASCII characters to be entered in EditText.

edittext.setFilters(new InputFilter[] {
 new InputFilter() {
    public CharSequence filter(CharSequence src, int start,
            int end, Spanned dst, int dstart, int dend) {
        if(src.equals("")){ // for backspace
            return src;
        }
        if(src.toString().matches("[\\x00-\\x7F]+")){
            return src;
        }
        return "";
    }
 }
});