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"

相关文章:

  • 2022-12-23
  • 2021-07-14
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-09-15
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-10-02
  • 2022-12-23
  • 2021-10-03
  • 2021-11-30
相关资源
相似解决方案