出现错误的现象
我想让textview显示:你好啊430000000呵呵呵呵呵呵呵赫尔呵呵. 由于我设置了maxline=1 ellipsize=”end” 在Textview宽度不够的时候应该显示成
你好啊430000000呵呵呵呵呵呵呵…(理想的显示)
结果在一些手机上 特别是5.0以下的手机 显示成
你好啊…
当时想着这么会出现这个情况呢 于是我上网上搜索了下 比较靠谱的说法是 当你设置ellipsize=”end” 这个属性时 textview会检测你的文字应该在那截断

****textview的折行包含以下规律:
1、半角字符与全角字符混乱所致:这种情况一般就是汉字与数字、英文字母混用。
2、TextView在显示中文的时候标点符号不能显示在一行的行首和行尾,如果一个标点符号刚好在一行的行尾,该标点符号就会连同前一个字符跳到下一行显示。
3、一个英文单词不能被显示在两行中( TextView在显示英文时,标点符号是可以放在行尾的,但英文单词也不能分开 )。**

网上试了很多方法 一种说是把文字全部转成全角(这样做不好看 看着很别扭)
还有的说重写textview

然后我想着既然系统截取单词判断出现了错误 那我就自己来截取合适的文字长度设置给textview不就行了。于是我就尝试着自己截取。所以我想到是看看系统提供的TextUtils有没有这样的方法 结果里面还真有。于是我调用了
(String) TextUtils.ellipsize(str,tv1.getPaint(),dp2px(120), TextUtils.TruncateAt.END);
第一个参数是: 想要设置给textview的文本内容
第二个参数是: textview的paint系统会用这个paint那测量文字有多长
第三个参数是: textview的宽度 这个宽度一般都能通过布局拿到 根据求取屏幕宽度 减去它左边和右边的布局就能知道多宽了
地四个阐述是: 截断方式
返回值: 系统根据textview的paint和textview宽度 返回一个正确的截断字符串
然后试了一下问题解决了
显示为
你好啊43000000…

出现过这个问题的朋友们可以试试这个方法。有更好的解决方法也请告知一下

关于Textview maxline=1 ellipsize=end 导致中英文数字混合分割错误的问题相关推荐

  1. 基于词典的正向最大匹配中文分词算法,能实现中英文数字混合分词

    基于词典的正向最大匹配中文分词算法,能实现中英文数字混合分词.比如能分出这样的词:bb霜.3室.乐phone.touch4.mp3.T恤 第一次写中文分词程序,欢迎拍砖. publicclass MM ...

  2. 基于词典的逆向最大匹配中文分词算法,更好实现中英文数字混合分词

    基于词典的逆向最大匹配中文分词算法,能实现中英文数字混合分词.比如能分出这样的词:bb霜.3室.乐phone.touch4.mp3.T恤.实际分词效果比正向分词效果好 publicclass RMM ...

  3. PHP基于字典的中英文数字混合分词算法RMM简易实现

    <?phpclass Seg {//字典private $dict = [];//加载字典function set_dict($vDict){//词典大写,方便比对foreach ($vDict ...

  4. 中英文数字混合的复合格式处理

    Author: 水如烟 曾写过一个How TO:操作字长字符串,现在重新整理,使更方便些. Public   Class  uString Private   Sub   New ()      En ...

  5. 记录Android TextView在设置ellipsize时出现空白的问题

    记录Android TextView在设置ellipsize时出现空白的问题 2021-8-23 设置android:maxLine="1",会导致textView后面有一段空白, ...

  6. android:ellipsize=end 不起作用,Android应用开发Android TextView关于android:ellipsize=end的一个神奇bug解决方案...

    本文将带你了解Android应用开发Android TextView关于android:ellipsize=end的一个神奇bug解决方案,希望本文对大家学Android有所帮助. 疑惑 今天在开发过 ...

  7. Android里面的settext作用,Android性能优化-TextView的setText方法会导致界面重绘?

    问题现象 大概就是我们在自定义一个视频组件的ui时,发现了一段异常的效果. 我简述一下: 视频的控制器 底部一般都是 显示时间(textview)和进度条(seekbar)的 一般要实现这个效果 都是 ...

  8. android:ellipsize = marquee 跑马灯,TextView设置android:ellipsize=marquee不滚动

    今天发现android开发中有一个android:ellipsize=marquee,这个感觉像html中的marquee功能,可以实现滚动效果,于是测试了一下,结果不行呀,后来百度了一下解决办法,下 ...

  9. android:ellipsize = marquee 跑马灯,Android基于TextView属性android:ellipsize实现跑马灯效果的方法...

    本文实例讲述了Android基于TextView属性android:ellipsize实现跑马灯效果的方法.分享给大家供大家参考,具体如下: Android系统中TextView实现跑马灯效果,必须具 ...

最新文章

  1. 终于有人站出来为程序员说话了
  2. TableLayout(表格布局)
  3. $_FILES error(笔记)
  4. SPI及其工作原理浅析
  5. Ardino基础教程 6_抢答器
  6. 【附全部代码+图片】使用HTML5+CSS3绘制HTML5的logo——Web前端系列学习笔记
  7. kubernetes mysql ip_弄明白kubernetes中的“三种IP”
  8. 分隔链表Python解法
  9. leetcode 483. 最小好进制
  10. Tomcat 配置支持APR
  11. Appium安装过程
  12. 3_less混和(使用类来混合)
  13. 成都专业语音转化为文字怎么样_安徽听见科技
  14. C# WinForm开发系列 - ComboBox
  15. c语言系统编程项目实训,《C语言程序设计》项目实训指导书.doc
  16. Saliency Detection: A Spectral Residual Approach
  17. 90后小伙新创奶茶品牌,坪效惊人月销售十万!
  18. cm parcels无法在centos7.x版本下分发
  19. 修改源码刷步数、年会摇一摇数据
  20. 行业elasticsearch容器化存储分离调研报告

热门文章

  1. gawk创建标题和脚本_使用此Gawk脚本为社交媒体帖子创建精美的文本
  2. 如何把你的安卓手机变成Linux?
  3. CI/CD系列之阿里云云效2020应用篇
  4. CAS单点登录(http方式)
  5. SpringBoot+SpringSecurity+JWT整合实现单点登录SSO史上最全详解
  6. wxh play 组织结构图
  7. 在pypi上发布python包详细教程
  8. linux内存双通道,两根内存就是双通道?太年轻
  9. 在VC中编程实现按钮的启用(enable)和禁用(disable)
  10. Android Studio 中 为模拟器添加图片和图片路径(图文级教程)