如何从android中的超链接文本中删除下划线?

如何从android中的超链接文本中删除下划线?,第1张

概述我有Button及其文本,我从string.xml中检索它,即我在strings.xml中的res/values中声明了一个Button文本<stringname="Google"><ahref=""http://www.google.com\">Google</a></string>我将其文本颜色从蓝色删除为白色,但如何删除其下划线?在我的.java文件中,我只使用setMovem

我有button及其文本,我从string.xml中检索它,即
我在strings.xml中的res / values中声明了一个button文本

<string name="Google"><a href=""http://www.Google.com\">Google</a></string>

我将其文本颜色从蓝色删除为白色,但如何删除其下划线?
在我的.java文件中,我只使用setMovementMethod(linkMovementMethod.getInstance());使链接clickabale …我没有使用linkify,webvIEw或任何类似form.HTML …
一切正常.我只想删除“Google”文字下方的下划线…
有没有办法在xml中执行此 *** 作?

我甚至使用了androID:autolink =“all”.但是当我使用它时,文本和按钮的颜色会发生变化,我不希望这样.

请帮忙.

解决方法:

TextVIEw text=(TextVIEw) findVIEwByID(R.ID.text);       String value = "<HTML> click to go <Font color=#757b86><b><a href=\"http://www.Google.com\">Google</a></b></Font> </HTML>";Spannable spannedText = (Spannable)                HTML.fromHTML(value);text.setMovementMethod(linkMovementMethod.getInstance());Spannable processedText = removeUnderlines(spannedText);        text.setText(processedText);

这是你的removeUnderlines()

public static Spannable removeUnderlines(Spannable p_Text) {                 URLSpan[] spans = p_Text.getSpans(0, p_Text.length(), URLSpan.class);                 for (URLSpan span : spans) {                      int start = p_Text.getSpanStart(span);                      int end = p_Text.getSpanEnd(span);                      p_Text.removeSpan(span);                      span = new URLSpanNoUnderline(span.getURL());                      p_Text.setSpan(span, start, end, 0);                 }                 return p_Text;            }  

还创建类URLSpanNoUnderline.java

import co.questapp.quest.R;import androID.text.TextPaint;import androID.text.style.URLSpan;public class URLSpanNoUnderline extends URLSpan {    public URLSpanNoUnderline(String p_Url) {        super(p_Url);    }    @OverrIDe    public voID updateDrawState(TextPaint p_DrawState) {        super.updateDrawState(p_DrawState);        p_DrawState.setUnderlineText(false);        p_DrawState.setcolor(R.color.info_text_color);    }}

使用此行您还可以更改该文本的颜色p_DrawState.setcolor(R.color.info_text_color);

总结

以上是内存溢出为你收集整理的如何从android中的超链接文本中删除下划线?全部内容,希望文章能够帮你解决如何从android中的超链接文本中删除下划线?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/web/1111530.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存