Android编程中TextView字体属性设置方法(大小、字体、下划线、背景色)
程序员文章站
2023-12-09 21:29:45
本文实例讲述了android编程中textview字体属性设置方法(大小、字体、下划线、背景色)。分享给大家供大家参考,具体如下:
import android....
本文实例讲述了android编程中textview字体属性设置方法(大小、字体、下划线、背景色)。分享给大家供大家参考,具体如下:
import android.content.context; import android.graphics.color; import android.text.spannablestring; import android.text.spanned; import android.text.style.absolutesizespan; import android.text.style.backgroundcolorspan; import android.text.style.bulletspan; import android.text.style.foregroundcolorspan; import android.text.style.relativesizespan; import android.text.style.scalexspan; import android.text.style.strikethroughspan; import android.text.style.stylespan; import android.text.style.subscriptspan; import android.text.style.superscriptspan; import android.text.style.typefacespan; import android.text.style.underlinespan; public class textviewutil { /** * 设置字体大小,用px * * @param context * * @param str * 目标字符串 * @param start * 开始位置 * @param end * 结束位置 * @param pxsize * 像素大小 * @return */ public spannablestring getsizespanusepx(context context, string str, int start, int end, int pxsize) { spannablestring ss = new spannablestring(str); ss.setspan(new absolutesizespan(pxsize), 4, str.length(), spanned.span_exclusive_exclusive); return ss; } /** * 设置字体大小,用dip * * @param context * * @param str * 目标字符串 * @param start * 开始位置 * @param end * 结束位置 * @param dipsize * 像素大小 * @return */ public spannablestring getsizespanusedip(context context, string str, int start, int end, int dipsize) { spannablestring ss = new spannablestring(str); ss.setspan(new absolutesizespan(dipsize, true), 4, str.length(), spanned.span_exclusive_exclusive); return ss; } /** * 设置字体大小,用sp * * @param context * * @param str * 目标字符串 * @param start * 开始位置 * @param end * 结束位置 * @param spsize * sp大小 * @return */ public spannablestring getsizespansptopx(context context, string str, int start, int end, int spsize) { spannablestring ss = new spannablestring(str); ss.setspan(new absolutesizespan(displayutil.sp2px(context, spsize)), start, end, spanned.span_exclusive_exclusive); return ss; } /** * 设置字体相对大小 * * @param context * @param str * 目标字符串 * @param start * 开始位置 * @param end * 结束位置 * @param relativesize * 相对大小 如:0.5f,2.0f * @return */ public spannablestring getrelativesizespan(context context, string str, int start, int end, float relativesize) { spannablestring ss = new spannablestring(str); ss.setspan(new relativesizespan(relativesize), start, end, spanned.span_exclusive_exclusive); return ss; } /** * 设置字体 * * @param context * @param str * 目标字符串 * @param start * 开始位置 * @param end * 结束位置 * @param typeface * 字体类型 如:default,efault-bold,monospace,serif,sans-serif * @return */ public spannablestring gettypefacespan(context context, string str, int start, int end, string typeface) { spannablestring ss = new spannablestring(str); ss.setspan(new typefacespan(typeface), start, end, spanned.span_exclusive_exclusive); return ss; } /** * 设置字体形体 * * @param context * @param str * 目标字符串 * @param start * 开始位置 * @param end * 结束位置 * @param style * 字体类型 如: typeface.normal正常 typeface.bold粗体 typeface.italic斜体 * typeface.bold_italic粗斜体 * @return */ public spannablestring getstylespan(context context, string str, int start, int end, int style) { spannablestring ss = new spannablestring(str); ss.setspan(new stylespan(style), start, end, spanned.span_exclusive_exclusive); return ss; } /** * 设置字体下划线 * * @param context * @param str * 目标字符串 * @param start * 开始位置 * @param end * 结束位置 * @return */ public spannablestring getunderlinespan(context context, string str, int start, int end) { spannablestring ss = new spannablestring(str); ss.setspan(new underlinespan(), start, end, spanned.span_exclusive_exclusive); return ss; } /** * 设置字体删除线 * * @param context * @param str * 目标字符串 * @param start * 开始位置 * @param end * 结束位置 * @return */ public spannablestring getdeletelinespan(context context, string str, int start, int end) { spannablestring ss = new spannablestring(str); ss.setspan(new strikethroughspan(), start, end, spanned.span_exclusive_exclusive); return ss; } /** * 设置上标 * * @param context * @param str * 目标字符串 * @param start * 开始位置 * @param end * 结束位置 * @return */ public spannablestring getsuperscriptspan(context context, string str, int start, int end) { spannablestring ss = new spannablestring(str); ss.setspan(new superscriptspan(), start, end, spanned.span_exclusive_exclusive); return ss; } /** * 设置放大系数 * * @param context * @param str * 目标字符串 * @param start * 开始位置 * @param end * 结束位置 * @param scale * 放大多少倍,x轴方向,y轴不变 如:0.5f, 2.0f * @return */ public spannablestring getscalespan(context context, string str, int start, int end, float scale) { spannablestring ss = new spannablestring(str); ss.setspan(new scalexspan(scale), start, end, spanned.span_exclusive_exclusive); return ss; } /** * 设置下标 * * @param context * @param str * 目标字符串 * @param start * 开始位置 * @param end * 结束位置 * @return */ public spannablestring getsubscriptspan(context context, string str, int start, int end) { spannablestring ss = new spannablestring(str); ss.setspan(new subscriptspan(), start, end, spanned.span_exclusive_exclusive); return ss; } /** * 设置背景色 * * @param context * @param str * 目标字符串 * @param start * 开始位置 * @param end * 结束位置 * @param color * 颜色值 如color.black * @return */ public spannablestring getbackgroundcolorspan(context context, string str, int start, int end, int color) { spannablestring ss = new spannablestring(str); ss.setspan(new backgroundcolorspan(color), start, end, spanned.span_exclusive_exclusive); return ss; } /** * 设置背景色 * * @param context * * @param str * 目标字符串 * @param start * 开始位置 * @param end * 结束位置 * @param color * 颜色值 如:#cccccc * @return */ public spannablestring getbackgroundcolorspan(context context, string str, int start, int end, string color) { spannablestring ss = new spannablestring(str); ss.setspan(new backgroundcolorspan(color.parsecolor(color)), start, end, spanned.span_exclusive_exclusive); return ss; } /** * 设置前景色 * * @param context * * @param str * 目标字符串 * @param start * 开始位置 * @param end * 结束位置 * @param color * 颜色值 如color.black * @return */ public spannablestring getforegroundcolorspan(context context, string str, int start, int end, int color) { spannablestring ss = new spannablestring(str); ss.setspan(new foregroundcolorspan(color), start, end, spanned.span_exclusive_exclusive); return ss; } /** * 设置前景色 * * @param context * * @param str * 目标字符串 * @param start * 开始位置 * @param end * 结束位置 * @param color * 颜色值 如:#cccccc * @return */ public spannablestring getforegroundcolorspan(context context, string str, int start, int end, string color) { spannablestring ss = new spannablestring(str); ss.setspan(new foregroundcolorspan(color.parsecolor(color)), start, end, spanned.span_exclusive_exclusive); return ss; } }
希望本文所述对大家android程序设计有所帮助。