您好,登錄后才能下訂單哦!
這期內容當中小編將會給大家帶來有關Android中怎么利用EditText禁止輸入表情,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
InputFilter inputFilter= new InputFilter() { Pattern emoji = Pattern.compile("[\ud83c\udc00-\ud83c\udfff]|[\ud83d\udc00-\ud83d\udfff]|[\u2600-\u27ff]", Pattern.UNICODE_CASE | Pattern.CASE_INSENSITIVE); @Override public CharSequence filter(CharSequence source, int start, int end, Spanned dest, int dstart, int dend) { Matcher emojiMatcher = emoji.matcher(source); if (emojiMatcher.find()) { // Toast.makeText(MainActivity.this,"不支持輸入表情", 0).show(); MyToast.showText("不支持輸入表情"); return ""; } return null; } };
然后給editText設置filter,這里給editText設置了兩個filter第一個是屏蔽表情,第二個是設置用戶輸入多少字數的限制
//給editText設置filter edit_name.setFilters(new InputFilter[]{inputFilter,new InputFilter.LengthFilter(12)});
當然這里最后要提醒大家一點就是,這樣屏蔽的表情符號肯定還是不能夠百分之百的屏蔽完全的。所以最后我們只能選擇讓用戶填寫英文,漢字,和數字了。下面是過濾的代碼
InputFilter inputFilter=new InputFilter() { Pattern pattern = Pattern.compile("[^a-zA-Z0-9\\u4E00-\\u9FA5_]"); @Override public CharSequence filter(CharSequence charSequence, int i, int i1, Spanned spanned, int i2, int i3) { Matcher matcher= pattern.matcher(charSequence); if(!matcher.find()){ return null; }else{ MyToast.showText("只能輸入漢字,英文,數字"); return ""; } } };
上述就是小編為大家分享的Android中怎么利用EditText禁止輸入表情了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。