总结起来大概有5种做法:

将要处理的文字写到一个资源文件,如string.xml(使用html用法格式化)

当文字中出现URL、E-mail、电话号码等的时候,可以将TextView的android:autoLink属性设置为相应的的值,如果是所有的类型都出来就是**android:autoLink="all",

当然也可以在java代码里 做,textView01.setAutoLinkMask(Linkify.ALL); **

用Html类的fromHtml()方法格式化要放到TextView里的文字 ,与第1种一样,只是是用代码动态设置

设置TextView的Paint属性:tvTest.getPaint().setFlags(Paint. UNDERLINE_TEXT_FLAG ); //下划线

用Spannable或实现它的类,如SpannableString来格式部分字符串。

另外附上一篇博客介绍:Android TextView中文字通过SpannableString来设置超链接、颜色、字体等属性

如果是在资源文件里:

1、字符串资源中设置下划线属性

phone:0123456

MyLink

直接让TextView引用字符串资源的name即可。

2、TextView设置autoLink属性

android:id="@+id/text1"

android:layout_width="match_parent"

android:layout_height="match_parent"

android:autoLink="all"

android:text="@string/link_text_auto" />

如果是代码里:

1、使用Html.fromHtml()

TextView textView = (TextView)findViewById(R.id.tv_test);

textView.setText(Html.fromHtml(""+"0123456"+""));

2、使用TextView的Paint的属性

tvTest.getPaint().setFlags(Paint.UNDERLINE_TEXT_FLAG); //下划线

tvTest.getPaint().setAntiAlias(true);//抗锯齿

3、使用SpannableString类

SpannableString content = new SpannableString(str);

content.setSpan(new UnderlineSpan, 0, str.length(), 0);

代码里面自定义超链接样式:

TextView tv=new TextView(this);

tv.setText(Html.fromHtml("自定义的超链接样式"));

// 在单击链接时凡是有要执行的动作,都必须设置MovementMethod对象

tv.setMovementMethod(LinkMovementMethod.getInstance());

CharSequence text = tv.getText();

if (text instanceof Spannable){

int end = text.length();

Spannable sp = (Spannable)tv.getText();

URLSpan[] urls = sp.getSpans( 0 , end, URLSpan.class );

SpannableStringBuilder style = new SpannableStringBuilder(text);

style.clearSpans(); // should clear old spans

for (URLSpan url : urls){

URLSpan myURLSpan= new URLSpan(url.getURL());

style.setSpan(myURLSpan,sp.getSpanStart(url),sp.getSpanEnd(url),Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);

style.setSpan(new//设置前景色为红色

}

tv.setText(style);

settext 下划线_Android TextView 添加下划线的几种方式相关推荐

  1. Android Textview 添加下划线 方法

    Android TextView 添加下划线的简单方法 在res的values资源文件夹下,给String.xml文件添加 <string name="userlicense" ...

  2. TextView 添加下划线的几种方式

    资料 TextView 添加下划线的几种方式 Android TextView 添加下划线的几种方式

  3. android字符串加删除线,android textview 添加上划线 中划线 删除线

    很简单:两个例子一样 例如1: android textview 添加下划线 中划线 删除线 tv=(TextView)findViewById(R.id.tvId); tv.getPaint().s ...

  4. 云服务器下,与嵌入式板子传递文件的几种方式 |FTP SFTP SCP TFTP NFS | 以及NFS 挂载失败常见问题

    云服务器下,与嵌入式板子传递文件的几种方式 一.ftp.sftp.scp 1.ftp 2.sftp 3.scp 二.tftp 1.下载tftp 2.创建tftp服务器的文件目录 3.修改配置文件 /e ...

  5. php.ini添加的变量读取,PHP5 在扩展里使用 INI 指令(直接添加和配合全局变量两种方式)...

    PHP 扩展开发的文章,我均已更新至<TIPI>(下面的博文可能已经过时,以 TIPI 上的内容为准). 我们的很多配置都是从php.ini里读取的,这个想必大家都非常熟悉了. 什么时候需 ...

  6. Intellij IDEA 添加jar包的三种方式

    Intellij IDEA 添加jar包的三种方式 inzaghihalo https://blog.csdn.net/superinzaghi747/article/details/80539095 ...

  7. unity添加天空盒的两种方式

    添加天空盒有两种方式  1 : 在当前相机上添加skybox     2 : 在当前场景上添加skybox (两种方式的结果是一样的   第一种方式的优势在于 如果 世界中有多个摄像机的话,切换摄像机 ...

  8. ImGui添加背景图片的两种方式

    给ImGui添加背景图片的两种方式 最近在使用ImGui做客户端程序,想给窗口添加背景图片,但是作者的文档里面好像并没有讲如何添加背景图片,研究了下找到了两种方式. 第一种 创建一个和窗口一样大的Im ...

  9. a标签里面设置onclick_详解a标签添加onclick事件的几种方式

    我们常用的在a标签中有点击事件: 1. a href="javascript:js_method();" rel="external nofollow" 这种方 ...

最新文章

  1. matlab各名称,Matlab-Simulink各模块对应的中文名称及介绍
  2. ORACLE 12C CDB中PDB参数管理机制
  3. 不用亲手搭建型了!华人博士提出few-shot NAS,效率提升10倍
  4. jq塞入不同状态html的写法 switch (defaults.type)
  5. fastjson jar包_Fastjsonlt;=1.2.47反序列化RCE漏洞(CNVD201922238)
  6. lis25ba_LIS25BA - MEMS数字输出运动传感器:低噪声,高带宽,3轴加速度计,带TDM接口 - STMicroelectronics...
  7. 第五章:创建自定义绑定
  8. mybatis中#{}和${}的区别及order by的sql注入问题
  9. android安全攻防实践_网络攻防小组招新,等待优秀的你!
  10. 桥接模式(Birdge)
  11. 在微型计算机中r o m是什么,微机原理试题一
  12. R语言建立Cox回归模型(包含所有协变量)比较不同治疗方法生存率的差异、predict函数对cox模型进行新数据的预测、计算不同样本的风险比HR(hazard ratio)
  13. 基于Java+SpringBoot+Thymeleaf+Mysql在线购物网站商城系统设计实现
  14. MySQL数据库基础03 韩顺平 自学笔记
  15. 李智慧 - 架构师训练营 第二周
  16. 使用自定义的dns服务器,快速搭建自己的DNS服务器
  17. css浮动后页面乱了怎样解决,详解浮动元素引起的问题和解决办法
  18. 欧洲杯第五周的比赛闲聊
  19. python基础编程:基于Python对象引用、可变性和垃圾回收详解
  20. C语言:L1-038 新世界 (5 分)

热门文章

  1. Win8初体验 内存/SSD硬盘性能挑Win7(一)
  2. matlab求离散系统,离散系统的MATLAB的实现.doc
  3. HTTP 传输编码增大了传输量,只为解决这一个问题 | 实用 HTTP
  4. 梦幻西游服务器维护,《梦幻西游》12月1日维护公告
  5. 阿里云创始人王坚:你要相信你所坚持的
  6. Ubuntu安装opencv的时候报undefined reference
  7. 数模学校道路整修_如何在您的浴室或厨房重新整修区域
  8. 工作需要仪式感,不然TA是没有温度的
  9. 论文翻译解读:Translating Embeddings for Modeling Multi-relational Data【TransE】
  10. Python字典嵌套