Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> Android 文本編輯框輸入字符及長度限制指示控件

Android 文本編輯框輸入字符及長度限制指示控件

編輯:關於Android編程

1、限制編輯框只可以輸入字母、數字和下劃線 方法1: <EditText     android:dights = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_" />   存在問題的方法2: 使用InputFilter,不過Character.isLetterOrDigit會把中文也當做Letter,故這個方法不能限制到中文的輸入。     InputFilter filter = new InputFilter() {      public CharSequence filter(CharSequence source, int start, int end,  Spanned dest, int dstart, int dend) {              for (int i = start; i < end; i++) {                      if ( !Character.isLetterOrDigit(source.charAt(i)) && !Character.toString(source.charAt(i)) .equals("_") && !Character.toString(source.charAt(i)) .equals("-")) {                              return "";                      }              }              return null;      }  };      2、限制編輯框輸入字數   方法1:在xml中使用android:maxLength來限制 方法2:使用LengthFilter來動態限制 editText.setFilters( new InputFilter[]{new InputFilter.LengthFilter(MAX_LENGTH) });       3、字數輸入限制顯示控件   先看看效果圖的紅色區域部分     每次使用的時候只要在xml中添加 EditTextLengthIndicate 控件,並在 代碼中加入 editTextLengthIndicate.bindEditText( editText, length) 就 能在界面中動態顯示圖中的紅色區域信息,指示用戶的輸入操作。    代碼如下     /**  * 繼承自TextView, 用來顯示指定文本框當前輸入的字數限制  */ public class EditTextLengthIndicate extends TextView{     private EditText mEditText;     private int mMaxLength;               public void bindEditText(EditText et, int maxLength) {         mEditText = et;         mMaxLength = maxLength;         setText(et.getText().length() + "/" + mMaxLength);                  if(et != null && maxLength > 0) {             et.addTextChangedListener(new TextWatcher() {                                  @Override                 public void onTextChanged(CharSequence s, int start, int before, int count) {                     // TODO Auto-generated method stub                     String str = s.toString();                     int length = str.length();                     setText(length + "/" + mMaxLength);                 }                                    });                          }              } }
  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved