我在谷歌搜索中找到的唯一一件事是test unit for the TextUtils class.
一些指导将不胜感激.
编辑:
我查看了我在这里得到的答案并尝试在我的代码上实现它.我使用了这段代码:
TextVIEw Title = (TextVIEw) vIEw.findVIEwByID(R.ID.ListitemThreadsTitle); Title.setVisibility(VIEw.VISIBLE); TextPaint p = Title.getPaint(); String strTitle = "Moe,Joe,Isaac,Bethany,Cornelius,CharlIE"; Title.setText(strTitle); float avail = p.measureText(strTitle); CharSequence ch = TextUtils.commaEllipsize(strTitle,p,avail,"one more","%d more"); Title.setText(ch);
但结果绝对不是它应该是的.
它更像是:Moe,Betha ……
而不是:Moe,Isaac 3
解决方法public static CharSequence commaEllipsize (CharSequence text,TextPaint p,float avail,String oneMore,String more)
参数:
text – 要截断的文本
p – 用于测量文本的Paint
avail – 文本可用的水平宽度
oneMore – 当前语言环境中“1 more”的字符串
more – 当前语言环境中“%d more”的字符串
用法示例:
String text = "Apple,Orange,Mango,Banana";TextVIEw tv = new TextVIEw(context);float textWIDth = tv.getPaint().measureText(text );String tempStr = TextUtils.commaEllipsize(text,tv.getPaint(),textWIDth,"1 more","%d more");tv.setText(tempStr);
更新:
TextVIEw Title = (TextVIEw) vIEw.findVIEwByID(R.ID.ListitemThreadsTitle);Title.setVisibility(VIEw.VISIBLE);TextPaint p = Title.getPaint();String strTitle = "Moe,CharlIE";Title.setText(strTitle);float avail = Title.getMeasureDWIDth();CharSequence ch = TextUtils.commaEllipsize(strTitle,"%d more");Title.setText(ch);总结
以上是内存溢出为你收集整理的android – 正确使用TextUtils.commaEllipsize全部内容,希望文章能够帮你解决android – 正确使用TextUtils.commaEllipsize所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)