限制Editext输入字节长度
来源:互联网 发布:苏州大禹网络怎么样 编辑:程序博客网 时间:2024/05/22 03:30
在 xml 文件中设置文本编辑框属性作字符数限制
如:Android:maxLength="10" 即限制最大输入字符个数为10
这样限制的话限制的是字符长度,有的并不能实现需求,那么限制字节长度应该怎么处理呢?请看如下所示:
InputFilter[] filters = new InputFilter[]{new LimitCharLengthFilter(12)}; editext.setFilters(filters);
import java.io.UnsupportedEncodingException;import android.text.InputFilter;import android.text.Spanned;/** * 限制输入的字符的数量 * * @author xfc */public class LimitCharLengthFilter implements InputFilter { private int mMax = 0; public LimitCharLengthFilter(int mMax) { super(); this.mMax = mMax; } public CharSequence filter(CharSequence source, int start, int end, Spanned dest, int dstart, int dend) { int bytes = 0; int sourceBytes = 0; int keep = 0; try { bytes = dest.toString().getBytes("GBK").length; sourceBytes = source.toString().getBytes("GBK").length; if (bytes + sourceBytes <= mMax) { keep = source.length(); } else { for (int i = 0; i < source.length(); i++) { int currentSoureBytes = source.subSequence(0, i + 1) .toString().getBytes("GBK").length; if (bytes + currentSoureBytes > mMax) { keep = i; break; } } } } catch (UnsupportedEncodingException e) { e.printStackTrace(); } if (keep <= 0) { return ""; } return source.subSequence(start, keep + start); }}
这样是不是很简单就实现了呢,快去试试效果吧。
0 0
- 限制Editext输入字节长度
- 限制Edittext输入的字节长度
- 自定义Editext控制输入字数限制的文本框Editext
- 动态限制EdiText只能输入特定字符
- 输入长度的限制
- EditText限制输入长度
- ext限制输入长度
- ios 限制输入长度
- UITextView限制输入长度
- UITextField限制输入长度
- 限制 UITextField 输入长度
- UITextField 限制输入长度
- js限制输入长度
- css限制输入长度
- UITextField长度输入限制
- UITextField限制输入长度
- 限制UITextField输入长度
- iOS限制输入长度
- hadoop集成RHive
- SharedPreference存储
- HTTP请求中POST与GET的区别
- Kinfu VS2010配置指南
- 影像标签
- 限制Editext输入字节长度
- 《Cracking the Coding Interview程序员面试金典》----字符串变换(字典树)
- mysql Table 'performance_schema.session_status' doesn't exist
- 【Spring】Spring使用外部properties文件
- C++实现预装驱动功能
- iOS开发-检测程序在前台和后台锁屏解锁的状态
- Tomcat启动时报错:“ Error starting static Resources”问题解决
- android 写SD卡权限
- MyBatis传入多个参数的问题