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;

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值