How to programmatically set maxLength in Android TextView?

后端 未结 11 1770
心在旅途
心在旅途 2020-11-29 17:06

I would like to programmatically set maxLength property of TextView as I don\'t want to hard code it in the layout. I can\'t see any set

11条回答
  •  挽巷
    挽巷 (楼主)
    2020-11-29 17:40

    To keep the original input filter, you can do it this way:

    InputFilter.LengthFilter maxLengthFilter = new InputFilter.LengthFilter(100);
            InputFilter[] origin = contentEt.getFilters();
            InputFilter[] newFilters;
            if (origin != null && origin.length > 0) {
                newFilters = new InputFilter[origin.length + 1];
                System.arraycopy(origin, 0, newFilters, 0, origin.length);
                newFilters[origin.length] = maxLengthFilter;
            } else {
                newFilters = new InputFilter[]{maxLengthFilter};
            }
            contentEt.setFilters(newFilters);
    

提交回复
热议问题