以编程方式设置PinEntryEditText限制

时间:2018-06-21 04:49:36

标签: android github android-edittext

我在我的应用中使用this库。我必须以编程方式设置edittext的限制。 现在,我正在xml文件android:maxLength="5"中执行此操作。但是我想针对不同的活动进行不同的设置,并且长度将动态确定。,如何实现?

2 个答案:

答案 0 :(得分:1)

setMaxLength()的源代码中有PinEntryEditText可用的方法来设置MaxLength

check line number 116

public void setMaxLength(final int maxLength) {
        mMaxLength = maxLength;
        mNumChars = maxLength;

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

        setText(null);
        invalidate();
}

示例代码

PinEntryEditText.setMaxLength(5);
PinEntryEditText.setMaxLength(6);
PinEntryEditText.setMaxLength(7);

答案 1 :(得分:0)

尝试一下

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

这也可以使用

InputFilter[] fa = new InputFilter[1];
fa[0]=new InputFilter.LengthFilter(8);editText.setFilters(fa)