您的位置:首页 > 移动开发 > Android开发

android 设置edittext最大值输入并且提示

2016-05-11 17:46 375 查看
public class LengthFilter implements InputFilter {  

     public LengthFilter(int max) {  

         mMax = max;  

     }  

  

     @Override  

     public CharSequence filter(CharSequence source, int start, int end,  

             Spanned dest, int dstart, int dend) {  

         int keep = mMax - (dest.length() - (dend - dstart));  

  

         if (keep <= 0) {  

             if (mErrorToast == null) {  

                 mErrorToast = Toast.makeText(ShowDetailCommentActivity.this, R.string.comment_input_overflow,  

                         Toast.LENGTH_SHORT);  

             }  

             mErrorToast.show();  

             return "";  

         } else if (keep >= end - start) {  

             return null; // keep original  

         } else {  

             keep += start;  

             if (mErrorToast == null) {  

                 mErrorToast = Toast.makeText(ShowDetailCommentActivity.this, R.string.comment_input_overflow,  

                         Toast.LENGTH_SHORT);  

             }  

             mErrorToast.show();  

             if (Character.isHighSurrogate(source.charAt(keep - 1))) {  

                 --keep;  

                 if (keep == start) {  

                     return "";  

                 }  

             }  

             return source.subSequence(start, keep);  

         }  

     }  

  

     private int mMax;  

 }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: