设置EditText的最大长度

时间:2016-09-07 01:30:26

标签: android maxlength

我想在EditText中设置1个字符的长度,但只是在一部分条件中。有一种方法可以通过XML设置最大长度,但这将适用于整个条件。如何以编程方式设置最大长度?

4 个答案:

答案 0 :(得分:7)

您可以在XML中添加:

  

机器人:最大长度= “10”

或以编程方式:

EditText editText = new EditText(this);
int maxLength = 3;    
editText.setFilters(new InputFilter[] {
    new InputFilter.LengthFilter(maxLength)
});

答案 1 :(得分:6)

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

答案 2 :(得分:1)

在Kotlin中,此扩展功能很方便:

fun EditText.setMaxLength(maxLength: Int) {
    filters = arrayOf(InputFilter.LengthFilter(maxLength))
}

答案 3 :(得分:0)

edtTime.setFilters(new InputFilter[]{ new InputFilter.LengthFilter(4) });