Android TextView 显示不全的自动补齐方式

来源:互联网 发布:淘宝全球购要交税吗 编辑:程序博客网 时间:2024/05/06 20:11

          TextView在Android开发中用到的地方应该是很多的。很多时候,TextView会有一行显示不全被截取或者会换行。之前我的解决办法比较笨拙,定死TextView的一行字数长度,最后一个以省略号代替,这样做会有很多问题,Android手机的适配是一个头疼的问题。而且汉字和英语符号所占的宽度也不一样,比较头疼。发现一个方法比较简单,分享一下。Android为TextView提供了setEllipsize方法,通过这个方法可以帮我们省去很多麻烦。具体的做法如下:

       textview.setEllipsize(TextUtils.TruncateAt.MARQUEE);//有 start end middle marquee参数
      textview.setSingleLine(true);//设置成单行的
      textview.setMarqueeRepeatLimit(6);//滚动循环次数

      public static final TextUtils.TruncateAt END  末位省略

      public static final TextUtils.TruncateAt MARQUEE  滚动     

      public static final TextUtils.TruncateAt MIDDLE  中间省略

      public static final TextUtils.TruncateAt START 开头省略

      如果我想末位省略,我就可以这么做:

      textview.setEllipsize(TextUtils.TruncateAt.END);

      但是要记得要设置TextView为单行的。可以在xml设定android:singleline="true"