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

来源:互联网 发布:数据库表结构属性 编辑:程序博客网 时间:2024/06/03 00:37

一、如何给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>





0 0
原创粉丝点击