繁体   English   中英

如何在Android中更改带下划线的字体颜色

[英]How to Change Underlined Font Color in Android

我在Android应用程序中网站链接的字体颜色有问题。 请参见下面的代码:

 Email.setText(Html.fromHtml("W : "+"<u>" +Email1+ "</u>"));

我可以在不更改W:颜色的情况下更改带下划线的Email1文本的字体颜色吗?

是否可以在"<u>" +Email1+ "</u>"内使用任何HTML标记来更改字体颜色。 请帮我提供您的想法/代码。 提前致谢。

You can use like this
Email.setText(Html.fromHtml("W : "+"<u><FONT COLOR=\"#80776b\" >"+Email1+"</Font></u>"));
 Use color code what you want.

仅仅因为我们可以添加'manual'方法来使用SpannableStringBuilder生成完全相同的输出:

String wText = "W : ";
String underlineText = "email@address.com";

SpannableStringBuilder ssb = new SpannableStringBuilder();
ssb.append(wText);
ssb.append(underlineText);
ssb.setSpan(new UnderlineSpan(), ssb.length()-underlineText.length(), ssb.length(), 
    Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
ssb.setSpan(new TextAppearanceSpan("normal", android.R.style.TextAppearance_Medium, 14, 
    ColorStateList.valueOf(Color.RED), ColorStateList.valueOf(Color.RED)),
    ssb.length()-underlineText.length(), ssb.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);

TextView tv1 = (TextView) findViewById(R.id.spannable_text1);
tv1.setText(ssb);

TextView tv2 = (TextView) findViewById(R.id.spannable_text2);
tv2.setText(Html.fromHtml(wText + "<u><font color=\"#FF0000\">" + underlineText + "</font></u>"));

在此处输入图片说明

顺便说一句,您不仅可以在电子邮件地址上加下划线,还可以使其成为可点击的链接。 请注意。 :)

使用setTextColor标记更改文本的颜色

例如:

Email.setTextColor(Color.RED);
         Email.setText(Html.fromHtml("W : "+"<u>" +"this is test"+ "</u>"));

我确定这对您有用,您想要这样吗?

    String styledText = "W: "+"<u>" + "<font color='red'>Email1</font> "+"</u>";
    Email.setText(Html.fromHtml(styledText), TextView.BufferType.SPANNABLE);

我猜这是最简单的解决方案...

Email.setText(Html.fromHtml("W : "+"<u  style=\"color:#80776b\">"+Email1+"</u>"));

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM