最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Android中EditText禁止輸入表情的實例代碼

 更新時間:2017年08月28日 14:31:36   作者:Code_legend  
本篇文章主要介紹了Android中EditText禁止輸入表情的實例代碼,具有一定的參考價值,有興趣的可以了解一下

最近在做的項目中用戶編輯資料的時候不希望用戶輸入表情,如果用戶輸入表情的話上傳給后臺要報錯,所以需要我們前端做一個判斷。下面就來說一下怎么在EditText中屏蔽表情吧。

網(wǎng)上有很多這樣的列子但是一不小心就會掉進坑里面,比如繼承EditText,重寫addTextChangedListener()方法??赡墚敃r你測試的時候沒有什么問題,但是項目上線后就會有很多問題,錯誤率很高,但是查看友盟后臺的時候好像是截取字符串長度方面的錯誤。所以建議大家不要使用那個方法了。

因為上面的方法不行,肯定要想其他的解決方案了。這里想到了通過過濾器來攔截用戶輸入的字符,可以避免截取字符串角標越界的問題。

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第一個是屏蔽表情,第二個是設置用戶輸入多少字數(shù)的限制

//給editText設置filter
edit_name.setFilters(new InputFilter[]{inputFilter,new InputFilter.LengthFilter(12)});

當然這里最后要提醒大家一點就是,這樣屏蔽的表情符號肯定還是不能夠百分之百的屏蔽完全的。所以最后我們只能選擇讓用戶填寫英文,漢字,和數(shù)字了。下面是過濾的代碼

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("只能輸入漢字,英文,數(shù)字");
        return "";
      }

    }
  };

ok,就是這么簡單。希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • 學習使用Android Chronometer計時器

    學習使用Android Chronometer計時器

    Chronometer是一個簡單的計時器,你可以給它一個開始時間,并以計時,或者如果你不給它一個開始時間,它將會使用你的時間通話開始,這篇文章主要幫助大家學習掌握使用Android Chronometer計時器,感興趣的小伙伴們可以參考一下
    2016-04-04
  • Android 輕松獲取CPU型號的方法

    Android 輕松獲取CPU型號的方法

    這篇文章主要介紹了在Android設備上獲取CPU型號是一項常見的任務的相關資料,需要的朋友可以參考下
    2023-10-10
  • 詳解Glide最新版V4使用指南

    詳解Glide最新版V4使用指南

    這篇文章主要介紹了詳解Glide最新版V4使用指南,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-03-03
  • 淺析Android中getWidth()和getMeasuredWidth()的區(qū)別

    淺析Android中getWidth()和getMeasuredWidth()的區(qū)別

    這篇文章主要介紹了淺析Android中getWidth()和getMeasuredWidth()的區(qū)別 ,getMeasuredWidth()獲取的是view原始的大小,getWidth()獲取的是這個view最終顯示的大小,具體區(qū)別介紹大家參考下本文
    2018-04-04
  • Android編程實現(xiàn)自定義輸入法功能示例【輸入密碼時防止第三方竊取】

    Android編程實現(xiàn)自定義輸入法功能示例【輸入密碼時防止第三方竊取】

    這篇文章主要介紹了Android編程實現(xiàn)自定義輸入法功能,可實習輸入密碼時防止第三方竊取的效果,結合實例形式詳細分析了Android布局、控件及輸入法相關操作技巧,需要的朋友可以參考下
    2017-01-01
  • Android數(shù)據(jù)加密之Des加密詳解

    Android數(shù)據(jù)加密之Des加密詳解

    DES是一種對稱加密算法,所謂對稱加密算法即:加密和解密使用相同密鑰的算法,這篇文章主要介紹了Android Des加密,感興趣的小伙伴們可以參考一下
    2016-08-08
  • Android仿微信列表滑動刪除之可滑動控件(一)

    Android仿微信列表滑動刪除之可滑動控件(一)

    這篇文章主要為大家詳細介紹了Android仿微信列表滑動刪除之可滑動控件,具有一定的實用性和參考價值,感興趣的小伙伴們可以參考一下
    2016-08-08
  • Android 仿網(wǎng)易新聞客戶端分類排序功能

    Android 仿網(wǎng)易新聞客戶端分類排序功能

    這篇文章主要介紹了Android 仿網(wǎng)易新聞客戶端分類排序功能,實現(xiàn)此功能涉及到拖拽item及隱藏拖拽的Item的方法,本文給大家介紹的非常詳細,具有參考借鑒價值,需要的朋友參考下吧
    2016-12-12
  • Android常用的圖片加載庫

    Android常用的圖片加載庫

    本文主要介紹了Android常用的圖片加載庫的相關資料。具有很好的參考價值。下面跟著小編一起來看下吧
    2017-04-04
  • android studio 3.6.1升級后如何處理 flutter問題

    android studio 3.6.1升級后如何處理 flutter問題

    這篇文章主要介紹了android-studio-3.6.1升級后 flutter問題,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-03-03

最新評論

溆浦县| 开鲁县| 班玛县| 龙州县| 买车| 民丰县| 大庆市| 永福县| 雷州市| 汨罗市| 丘北县| 中宁县| 保康县| 赣州市| 锡林浩特市| 新余市| 娱乐| 江北区| 镇赉县| 通海县| 宜黄县| 长海县| 孝感市| 贵德县| 南昌市| 香格里拉县| 武胜县| 荣成市| 金昌市| 保康县| 阿勒泰市| 东阿县| 万州区| 祥云县| 阿克陶县| 德惠市| 松溪县| 南昌市| 宝清县| 五大连池市| 夏津县|