在Textiew中可以通过设置TextView的属性android:maxEms和android:ellipseize来使过多的文字显示为省略号,在EditText中设置只这两个属性则不行,android默认只有在文字不可编辑的状态下才可以显示这些效果,但是EditText重写了这个属性,使得文字默认都是可以编辑的。
源码中:www.kmhxyynk.com
-
@Override
-
protected boolean getwww.kmhxyynk.comDefaultEditable() {
-
return true;
-
}www.kmhxyynk.com
复制代码
所以若想要呈现TextView的效果,必须加上属性
android:editable= "false"
www.kmhxyynk.com
另外EditText不支持跑马等的效果.
-
@Override
-
public void setEllipsize(TextUtils.TruncateAt ellipsis) {
-
if (ellipsis == TextUtils.TruncateAt.MARQUEE) {
-
throw new Illegawww.kmhxyynk.comlArgumentExwww.kmhxyynk.comception("EditText
cannot use the ellipsize mode "
-
+ "TextUtils.TruncateAt.MARQUEE");
-
}
-
super.setEllipsize(ellipsis);
-
}
复制代码