热点新闻
Android TextView的一些常见功能
2024-01-17 10:38  浏览:562  搜索引擎搜索“爱农网”
温馨提示:信息一旦丢失不一定找得到,请务必收藏信息以备急用!本站所有信息均是注册会员发布如遇到侵权请联系文章中的联系方式或客服删除!
联系我时,请说明是在爱农网看到的信息,谢谢。
展会发布 发布信息 广告合作 软文发布



效果.png

简介

TextView作为Android开发中的基础控件,在日常开发中我们频繁使用到TextView的一些功能.这里就简单总结了一下开发中常用的一些功能

功能

  • 设置大小不一的文字
  • 设置中划下
  • 设置小数点以后文字字体大小
  • 设置不同颜色展示文字
  • 展示图文混排

实现

1 设置中划线

public static void setStrikethrough(TextView textView){ textView.setPaintFlags(Paint.STRIKE_THRU_TEXT_FLAG); }

2.设置不同文字大小

public static void setMoney(TextView textview,double money){ String moneyss= "<font color='#FFFFFF'><small>¥ </small></font><font color='#FFFFFF'><big>%s</big></font>"; String moneyContent=String.format(moneyss,getNumDiff(money)); textview.setText(Html.fromHtml(moneyContent)); } public static void setMoney(TextView textview,double money,int sizeSpan){ String moneyss= "¥ %s"; String moneyContent=String.format(moneyss,getNumDiff(money)); SpannableString spannableString = new SpannableString(moneyContent); spannableString.setSpan(new AbsoluteSizeSpan(sizeSpan), 0, 2, Spanned.SPAN_INCLUSIVE_EXCLUSIVE); textview.setText(spannableString); } public static String getNumDiff(double count) { String fansNum = ""; if (count >= 0 && count < 10000) { fansNum = count + ""; } else if (count >= 10000 && count < 10000000) { if (count / 1000 % 10 != 0) { float num = (float) count / 10000; DecimalFormat decimalFormat = new DecimalFormat("0.0"); fansNum = decimalFormat.format(num).concat("万"); } else { fansNum = (count / 10000) + "万"; } } else if (count >= 10000000) { fansNum = "1000万"; } return fansNum; }

3.设置小数点以后文字大小

public static void setMoneyTextView(TextView textview,double money,int sizeSpan){ String moneyss= "¥ %.2f"; String moneyContent=String.format(moneyss,money); int index=moneyContent.indexOf("."); SpannableString spannableString = new SpannableString(moneyContent); spannableString.setSpan(new AbsoluteSizeSpan(sizeSpan), index, moneyContent.length(), Spanned.SPAN_INCLUSIVE_EXCLUSIVE); textview.setText(spannableString); }

4.设置不同文字展示

public static void setColor(TextView textview,String content){ // String str6 = "<font color=\"#00ff00\">我的</font><font color=\"#0000ff\">作业完成了</font>"; String moneyss= "%s <font color=\"#FF0000\">%s</font>"; String strigContent=String.format(moneyss,"我的","作业完成了"); textview.setText(Html.fromHtml(strigContent)); } public static void setColor(TextView textview,String content,int endSize){ SpannableString spannableString = new SpannableString(content); spannableString.setSpan(new ForegroundColorSpan(Color.parseColor("#FF0000")), endSize, spannableString.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); textview.setText(spannableString); }

5.设置图文混排

public static void setDrawable(Context mContext, TextView textview, String content){ SpannableString spannableString = new SpannableString(" "+content); //这只图片的宽高 Drawable drawable = mContext.getResources().getDrawable(R.mipmap.ic_launcher); drawable.setBounds(0, 0, 100, 100); ImageSpan imageSpan = new ImageSpan(drawable); spannableString.setSpan(imageSpan, 0, 1, ImageSpan.ALIGN_baseLINE); Drawable drawable2 = mContext.getResources().getDrawable(R.mipmap.ic_launcher); drawable2.setBounds(0, 0, 100, 100); ImageSpan imageSpan2 = new ImageSpan(drawable2); spannableString.setSpan(imageSpan2, 2, 3, ImageSpan.ALIGN_baseLINE); textview.setText(spannableString); }

注意
图文混排建议web加载标签方式实现

总结

简单的总结了一下TextView常见的一些展示样式,还有一些处理相对麻烦的,比如扩展TextView 指定类型文字高亮展示这里没做展开.后期继续总结.高亮和扩展的TextView的自定义库放在下边了

资源

高亮和扩展的TextView

发布人:05b9****    IP:124.223.189***     举报/删稿
展会推荐
让朕来说2句
评论
收藏
点赞
转发