zoukankan      html  css  js  c++  java
  • android开发去掉TextView使用html.from里面的a链接的下划线的方法

    class ClickURLSpan(url: String) : URLSpan(url) {
    companion object {
    fun stripUnderline(textView: TextView) {
    textView.movementMethod = LinkMovementMethod.getInstance()
    if (textView.text is Spannable) {
    val spannable = textView.text as Spannable
    val allSpans = spannable.getSpans(0, spannable.length, URLSpan::class.java)//查找<a></a>对应的URLSpan
    for (span in allSpans) {
    val start = spannable.getSpanStart(span)
    val end = spannable.getSpanEnd(span)
    spannable.removeSpan(span)
    spannable.setSpan(ClickURLSpan(span.url), start, end, 0)//替换为自定义的ClickURLSpan
    }
    textView.autoLinkMask = 0
    textView.text = spannable
    }
    }
    }
    override fun updateDrawState(ds: TextPaint) {
    super.updateDrawState(ds)
    ds.linkColor = ContextCompat.getColor(BaseLib.getContext(), R.color.text_primary)//设置a链接颜色
    ds.isUnderlineText = false  //去掉a链接下划线
    }
    override fun onClick(widget: View) {
    LogUtils.d("ClickURLSpan onClick:$url")
    }
    }
    使用方法:ClickURLSpan.stripUnderline(textview)
  • 相关阅读:
    构建之法阅读笔记05
    构建之法阅读笔记04
    构建之法阅读笔记03
    构建之法阅读笔记02
    构建之法阅读笔记01
    管理系统的简单解析---web
    Java中的异常处理
    多态
    重写与重载
    抽象类与接口
  • 原文地址:https://www.cnblogs.com/yongfengnice/p/11880349.html
Copyright © 2011-2022 走看看