textview中maxLength和maxEMS的区别

Android:maxlength

官网API对其的解释为:

textview中maxLength和maxEMS的区别

也就是说,他是个inputfilter(输入过滤器)他的作用是通过specified  , number(你指定的数字)来限制text   ,length(文本长度),这里特指的是文本长度,而无论我们输入什么内容,英文,符号,数字,汉字………………这些都属于文本范围,所以maxlength的作用就是直接限制显示的长度,

比如:

textview中maxLength和maxEMS的区别

界面效果就是:

textview中maxLength和maxEMS的区别

    7个字母+3个汉字。

今天做到这里的时候发现不能单纯利用这个属性做限制,就看了别的,发现还有个maxEms的属性,官网对其的解释为:

textview中maxLength和maxEMS的区别

翻译过来是使得textview的宽度不少于很多ems的宽度,此时超级不理解ems是啥?反正绝对不能是邮政快递吧,很迷茫在网上查了下各种开发者的解释,如下:

textview中maxLength和maxEMS的区别

这位说是限制字符数量,那么我的理解就是严格按照中文两个字符长度,字母占一个这样的规则,于是写了个例子进行测试

textview中maxLength和maxEMS的区别

界面结果是:

textview中maxLength和maxEMS的区别