我想在EditText中设置1个字符的长度,但只是在一部分条件中。有一种方法可以通过XML设置最大长度,但这将适用于整个条件。如何以编程方式设置最大长度?
答案 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) });