这个礼拜没有学到新的知识,也是惭愧。下周开始把学习Android放进日常了,要不前程担忧啊。
下面介绍一个好东西。
需求:经常项目中出现一行字中显示不同的颜色的字组成或者插入图片等。
面对这样的需求常规的做法就是LinearLayout中设置不同的控件显示不同的内容。
上面的做法需要可以实现,但是很麻烦且不太好。
百度之后发现SpannableString可以简单的解决上面的需求。
我只说在文字中加入图片的做法。其他用户可以自行百度,很多总结的都很好。
SpannableString ss = new SpannableString(title);
Drawable d = mContext.getResources().getDrawable(R.mipmap.tan_txt);
d.setBounds(0, 0, d.getIntrinsicWidth(), d.getIntrinsicHeight());
//用ImageSpan替换文本
ss.setSpan(new ImageSpan(d, ImageSpan.ALIGN_BASELINE), 0, 0, Spannable.SPAN_INCLUSIVE_EXCLUSIVE);
tvTitle.setText(ss);
还有一种方法
infoHolder.tvLuckJoinCount.setText(Html.fromHtml("<font color='" + mContext.getResources().getColor(R.color.one_got_red) + "'>" + goodsInfoHead.getPrize().getSum_goods_num() + "</font>" + "人次"));