Android中如何给TextView添加下划线、设置不同字体和颜色

本文介绍在Android中如何为TextView添加下划线效果,设置字体颜色,并实现点击跳转。通过修改XML布局文件和Java代码,你可以轻松定制TextView的显示样式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、如何给TextView添加下划线以及点击跳转

String txt = "点击跳转到百度";
        SpannableString spannableString = new SpannableString(txt);
        spannableString.setSpan(new ClickableSpan() {
            @Override
            public void updateDrawState(TextPaint ds) {
                ds.setColor(getResources().getColor(R.color.red));  //设置下划线颜色
                ds.setUnderlineText(true);  // 显示下划线
            }

            @Override
            public void onClick(View view) {     // TextView点击事件      
                    String pageUrl = "http://www.baidu.com";
                    if (!TextUtils.isEmpty(pageUrl)) {
                        WebViewActivity.toHere(getActivity(), pageUrl, "百度", false);
                    }
                }
            }
        }, 0, txt.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
        tv_goto_web.setText(spannableString);
tv_goto_web.setMovementMethod(LinkMovementMethod.getInstance());

二、如何给TextView文本设置不同字体大小和颜色?

1、设置不同颜色

private String setFontColorSize(String label, int digit) {
        StringBuilder sb = new StringBuilder();
        sb.append("<font color='#EFEFEF'>" + label + "</font>")
                .append("<font color='#ffffff'>" + digit + "</font>");
        return sb.toString();
}
2、设置不同字体大小以及字体颜色

//设置不同字体样式的文本
    private SpannableString setDiffTextStyle(String label, String digit, int label_style, int digit_style) {
        String str = label + digit;
        SpannableString ss = new SpannableString(str);
        ss.setSpan(new TextAppearanceSpan(MyAssetActivity.this, label_style),     //R.style.DDqbProfitTextViewLabelStyle
                0, label.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
        ss.setSpan(new TextAppearanceSpan(MyAssetActivity.this, digit_style),     //R.style.DDqbProfitTextViewDigitStyle
                label.length(), str.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);

        return ss;
    }
style.xml:

<!--年化收益率 不同字体style-->
<style name="DDqbProfitTextViewLabelStyle">
<item name="android:textColor">@color/Ddqb_Color_9FA2A6</item>
    <item name="android:textSize">@dimen/txt_size16</item>
</style>
<style name="DDqbProfitTextViewDigitStyle">
    <item name="android:textColor">@color/Ddqb_Color_9FA2A6</item>
    <item name="android:textSize">@dimen/txt_size18</item>
</style>





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值