设置textview字体不一样的显示效果

本文介绍了如何在Android中通过代码实现TextView的字体大小和颜色的个性化设置,以创建'金额样式显示'的效果。通过使用SpannableString和相关Span类,可以精确控制文本的特定部分,如设置指定文字的大小和颜色。同时提到了DensityUtil工具类用于dp转px的转换,以确保在不同设备上适配。相关XML布局文件中展示了TextView的基本配置。
部署运行你感兴趣的模型镜像
先直接上代码:
例:text = "我要上热门"
/**
 * 金额样式显示的方法
 * */
public void MoneyStyle(String text){
    Spannable span = new SpannableString(text);
//下面一行代码是设置要变化的字体大小,以及从第几个字开始,到第几个字结束
 span.setSpan(new AbsoluteSizeSpan(DensityUtil.dip2px(context, 24)), 0, text.length()-2, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
//下面一行代码是设置要变化字体的颜色,
以及从第几个字开始,到第几个字结束
span.setSpan(new ForegroundColorSpan(Color.parseColor("#ff4c4b")), 0, text.length()-1, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);//tvMoney是控件名
tvMoney.setText(span);}


DensityUtil是我自己的封装的工具类
/**
 * 根据手机的分辨率 dp(相对单位) 转成 px(像素)
 */
public static int dip2px(Context context, float dpValue) {
   final float scale = context.getResources().getDisplayMetrics().density;
   return (int) (dpValue * scale + 0.5f);
}


布局文件xml
<TextView
    android:id="@+id/tv_money"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textSize="12dp"
    android:textColor="#999999"/>




您可能感兴趣的与本文相关的镜像

Linly-Talker

Linly-Talker

AI应用

Linly-Talker是一款创新的数字人对话系统,它融合了最新的人工智能技术,包括大型语言模型(LLM)、自动语音识别(ASR)、文本到语音转换(TTS)和语音克隆技术

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值