EditText:以编程方式设置字符数

时间:2012-11-16 10:18:36

标签: android android-layout android-intent

我有EditText,我想限制可以在此EditText中输入的字符数,并以编程方式限制 / strong>,该怎么办?例如,假设我想将其限制为仅允许10个字符。

4 个答案:

答案 0 :(得分:42)

您可以使用InputFilter以编程方式将EditView中的字符数限制为:

InputFilter[] FilterArray = new InputFilter[1];
FilterArray[0] = new InputFilter.LengthFilter(10);
your_edittext.setFilters(FilterArray);

要获得更多帮助,您可以看到本教程限制EditView中的字符数:

http://www.tutorialforandroid.com/2009/02/maxlength-in-edittext-using-codes.html

答案 1 :(得分:1)

我会实现一个过滤器:

InputFilter filter = new InputFilter() {

   @Override
   public CharSequence filter(CharSequence source, int start, int end, Spanned dest, int dstart, int dend) {
      if (source.length > 10){
       //cancel the edit or whatever
      }
   }
};
EditText editText = (EditText) findViewById(R.id.rg);
editText.setFilters(new InputFilter[] {filter});

答案 2 :(得分:1)

public void setEditTextMaxLength(int length) {
    InputFilter[] FilterArray = new InputFilter[1];
    FilterArray[0] = new InputFilter.LengthFilter(length);
    edt_text.setFilters(FilterArray);
}

答案 3 :(得分:1)

试试这个我朋友的轻松游戏轻松生活 InputFilter[] FilterArray = new InputFilter[1]; FilterArray[0] = new InputFilter.LengthFilter(5); input.setFilters(FilterArray);