本文实例讲述了Android使用TextView实现无下划线超链接的方法。分享给大家供大家参考,具体如下:

Android系统默认把网址、电话、地图(geo地址)、邮箱等转换为超链接。

具体请查看 android:TextView简单设置文本样式和超链接的方法

和HTML中的一样,默认超链接都带下划线的,下面的方案可以在TextView中去掉超链接的下划线:

1、重写ClickableSpan类来去掉下划线样式(系统默认使用ClickableSpan来封装超链接)

//无下划线超链接,使用textColorLink、textColorHighlight分别修改超链接前景色和按下时的颜色

private class NoLineClickSpan extends ClickableSpan {

String text;

public NoLineClickSpan(String text) {

super();

this.text = text;

}

@Override

public void updateDrawState(TextPaint ds) {

ds.setColor(ds.linkColor);

ds.setUnderlineText(false); //去掉下划线

}

@Override

public void onClick(View widget) {

processHyperLinkClick(text); //点击超链接时调用

}

}

2、把超链接文本封装为NoLineClickSpan对象,并添加到TextView中

TextView tv = findViewById(R.id.tv_click);

SpannableString spStr = new SpannableString("脚本之家-->http://www.jb51.net");

ClickSpan clickSpan = new NoLineClickSpan(vo); //设置超链接

spStr.setSpan(clickSpan, 0, str.length(), Spanned.SPAN_INCLUSIVE_EXCLUSIVE);

tv.append(spStr);

tv.setMovementMethod(LinkMovementMethod.getInstance());

PS:不用把TextView的属性autoLink设为”all”.

3、设置超链接为可点击状态

tv.setMovementMethod(LinkMovementMethod.getInstance());

PS:在NoLineClickSpan类中实现onClick()回调方法.

更多关于Android相关内容感兴趣的读者可查看本站专题:《Android开发入门与进阶教程》、《Android多媒体操作技巧汇总(音频,视频,录音等)》、《Android基本组件用法总结》、《Android视图View技巧总结》、《Android布局layout技巧总结》及《Android控件用法总结》

希望本文所述对大家Android程序设计有所帮助。

android下划线链接,Android使用TextView实现无下划线超链接的方法相关推荐

  1. android php 长链接,Android,webview_安卓的webView的loadUrl打不开,太长的url超链接,求解,Android,webview - phpStudy...

    安卓的webView的loadUrl打不开,太长的url超链接,求解 这个链接在PC端,是没问题的啊. 但是webView的loadUrl就说找不到网页.请求怎么解决? http://filec.ca ...

  2. android 邮件分享链接,Android应用从通过电子邮件发送的链接打开

    我们的用户不时收到电子邮件.更改密码当他们点击链接时,我想将它们发送到我们的网站,但我们的 Android应用程序被打开. 链接例如是https://www.ourdomain.com/change- ...

  3. android 静态编译链接,Android NDK:使用预编译的静态库链接

    我正在尝试将Jnetpcap移植到Android,以便将其用于解析.pcap文件.Jnetpcap是libpcap的java包装器,它使用JNI.我已经使用android的源代码树将libpcap编译 ...

  4. 支付宝蚂蚁庄园线下支付链接,支付宝蚂蚁庄园线下支付地址

    支付宝蚂蚁庄园养鸡线下扫码付款 0.01元,收 180 克饲料:(良心地址,欢迎收藏) 转载于:https://www.cnblogs.com/xiluhua/p/10216737.html

  5. Android TextView出现双下划线?

    一.问题描述 在华为机型荣耀V10中Android版本9.0使用普通的方式设置下划线,却出现了双下划线的现象. 二.TextView设置下划线方式 正常情况下可以有五种设置下划线 1.字符串资源中设置 ...

  6. Android学习笔记(二)——TextView常用属性以及下划线、跑马灯设置

    属性 Textsize:字体的大小(单位Px) Textcolor:字体的颜色 text:文本内容.(设置文本内容也可以在activity中通过函数是setText()设置,可以传入字符串也可以传入整 ...

  7. 【Android 逆向】Dalvik 函数抽取加壳 ( Dalvik 下的函数指令抽取与恢复 | dex 函数指令恢复时机点 | 类加载流程 : 加载、链接、初始化 )

    文章目录 前言 一.Dalvik 下的函数指令抽取与恢复 二.dex 函数指令恢复时机点 1.dex 函数指令恢复 2.Android 源码中搜索 dexFindClass 函数 3.类加载流程 : ...

  8. Android单击、长按获取当前触点坐标下(TextView)文字字符

    package com.*.*.*.utils;import android.graphics.Rect; import android.text.Layout; import android.wid ...

  9. android文件添加一行代码怎么写,Android:以编程方式添加Textview,而不是将文本包装到下一行(示例代码)...

    我确定我做了一些愚蠢的错误,但这是我的问题. 基本上我尝试使用cardviews制作历史列表.在这些卡片视图中,我有一个垂直方向的LinearLayout,可以将我的所有内容都放入我的卡中. 在这个L ...

最新文章

  1. 简单介绍Go 语言常见的一些坑
  2. MD5SHA加密util类(Java)
  3. 云南计算机专升本数据结构_怎么查找云南省2019年专升本计算机专业试题
  4. Java命令行界面(第18部分):JCLAP
  5. jQuery上传插件-uploadify3.1使用说明
  6. PspNet在MMsegmentation框架下成功训练Pascal VOC2012数据集及踩坑实录
  7. php 虚拟主机ip配置文件,基于IP的虚拟主机配置
  8. 【转】数据库范式(1NF 2NF 3NF BCNF)详解二
  9. python: web api、json 与 gzip、zlib库比较
  10. 印刷体汉字识别matlab实现,如何用MATLAB仿真印刷体汉字识别系统?
  11. 【免费】文字转换语音合成软件地摊叫卖录音真人配音广告制作朗读播音软件
  12. 西数桌面云储存服务器,小白折腾NAS 篇九:超详细拆解小记 — Western Digital 西部数据 Elements 桌面硬盘12TB...
  13. 博思得标签打印机驱动_博思得打印机驱动
  14. 【操作系统】结合哲学家进餐问题分析如何预防死锁
  15. 计算机cpu好坏之分,学查看CPU天梯图,正确判断CPU性能好坏
  16. Mac文件夹如何进行加密
  17. new115.com dz.html,超实用的HTML代码段(赵荣娇)
  18. 在nameSilo购买域名
  19. 极限、微分、积分 必会公式总结
  20. Oracle表数据的更新

热门文章

  1. c++--定义图形抽象类。完成圆形、三角形、矩形的面积和周长计算
  2. PCA(主成分分析)和FA(因子分析)
  3. 修改注册表禁用edge浏览器保存密码功能
  4. 打开文件、文本文件的读写、二进制文件的读写
  5. ffmpeg+nginx 的直播(2,直播摄像头和麦克风)
  6. 祝福版的3D标签云动画特效
  7. 用PyTorch训练模型识别captcha库生成的验证码
  8. 我的世界黏土服务器怎么新注册,我的世界clay粘土服务器数字ip | 手游网游页游攻略大全...
  9. unity如何制作随机生成器
  10. HMS Core赋能移动金融,为行业注入增长新动力