1. 程式人生 > >SpannableStringBuilder使textview的文字更加酷炫與linnerlayout的分割線

SpannableStringBuilder使textview的文字更加酷炫與linnerlayout的分割線

 //SpannableStringBuilder的使用

String text = String.format("¥%1$s 門市價:¥%2$s",18.6,22); int z = text.lastIndexOf("門");

SpannableStringBuilder style = new SpannableStringBuilder(text);

style.setSpan(new AbsoluteSizeSpan(DisplayUtil.dip2px(mContext,14)),0,1, Spannable.SPAN_EXCLUSIVE_INCLUSIVE); //字號

style

.setSpan(new ForegroundColorSpan(Color.parseColor("#afafaf")),z, text.length(), Spannable.SPAN_EXCLUSIVE_INCLUSIVE); //顏色

style.setSpan(new AbsoluteSizeSpan(DisplayUtil.dip2px(mContext,14)),z, text.length(), Spannable.SPAN_EXCLUSIVE_INCLUSIVE); //字號

tv.setText(style);

//linnerlayout的分割線

實現的核心部分其實是LinearLayout的就這兩行:

android:divider="@drawable/divider"

android:showDividers="middle"

其中divider.xml是分隔線樣式。

<?xml version="1.0" encoding="utf-8"?>

<shapexmlns:android="http://schemas.android.com/apk/res/android"

android:shape="rectangle">

<sizeandroid:width="1dp"

android:height="1dp"/>

<solid android:color

="#e1e1e1"/>

</shape>

showDividers 是分隔線的顯示位置,beginning、middle、end分別代表顯示在開始位置,中間,末尾。

還有dividerPadding屬性這裡沒有用到,意思很明確給divider新增padding。