在textView添加超链接,有两种方式,第一种通过HTML格式化你的网址,一种是设置autolink,让系统自动识别超链接,下面为大家介绍下这两种方法的实现

在textView添加超链接,有两种方式,第一种通过HTML格式化你的网址,一种是设置autolink,让系统自动识别超链接。

代码如下:

第一种

复制代码代码如下:
public class MainActivity extends Activity { 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
super.onCreate(savedInstanceState); 
LinearLayout layout = new LinearLayout(this); 
LayoutParams params = new LayoutParams(LayoutParams.MATCH_PARENT, 
LayoutParams.MATCH_PARENT); 
TextView textView = new TextView(this); 
String html = "有问题:\n"; 
html+="<a href='http://www.baidu.com'>百度一下</a>";//注意这里必须加上协议号,即http://。

//否则,系统会以为该链接是activity,而实际这个activity不存在,程序就崩溃。 
CharSequence charSequence = Html.fromHtml(html);

textView.setText(charSequence);

textView.setMovementMethod(LinkMovementMethod.getInstance()); 
layout.addView(textView); 
this.setContentView(layout,params); 

第二种

复制代码代码如下:
public class MainActivity extends Activity { 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
super.onCreate(savedInstanceState); 
LinearLayout layout = new LinearLayout(this); 
LayoutParams params = new LayoutParams(LayoutParams.MATCH_PARENT, 
LayoutParams.MATCH_PARENT); 
TextView textView = new TextView(this); 
String html = "有问题:\n"; 
html+="www.baidu.com";//这里即使不加协议好HTTP;也能自动被系统识别出来。 
textView.setText(html); 
textView.setAutoLinkMask(Linkify.ALL); 
textView.setMovementMethod(LinkMovementMethod.getInstance()); 
layout.addView(textView); 
this.setContentView(layout,params); 

总结一下就是,以html显示超链接,必须写全url。以setAutoLinkMask(Linkify.ALL)可以不用不用写全,就能自动识别出来。

这两种方法,都得设置一下setMovementMethod,才会跳转。 
另外setAutoLinkMask不仅 识别超链接,包括电话号码之类的。

摘自:http://www.jb51.net/article/38160.htm

textView 添加超链接(两种实现方式)的更多相关文章

  1. android textView 添加超链接(两种实现方式)

    在textView添加超链接,有两种方式,第一种通过HTML格式化你的网址,一种是设置autolink,让系统自动识别超链接,下面为大家介绍下这两种方法的实现 在textView添加超链接,有两种方式 ...

  2. Android(java)学习笔记147:textView 添加超链接(两种实现方式,,区别于WebView)

    1.方式1: LinearLayout layout = new LinearLayout(this); LinearLayout.LayoutParams params = new LinearLa ...

  3. Android(java)学习笔记90:TextView 添加超链接(两种实现方式)

    1. TextView添加超链接: TextView添加超链接有两种方式,它们有区别于WebView: (1)方式1: LinearLayout layout = new LinearLayout(t ...

  4. 给TextView添加超链接的四种方式

    因为在上上篇博客中介绍了SpannableString的使用(SpannableString使用详解),由此想到给TextView添加超链接究竟有多少种方式?经过个人总结,现在一共发现四种,如果还有其 ...

  5. Android中Fragment与Activity之间的交互(两种实现方式)

    (未给Fragment的布局设置BackGound) 之前关于Android中Fragment的概念以及创建方式,我专门写了一篇博文<Android中Fragment的两种创建方式>,就如 ...

  6. Web APi之认证(Authentication)两种实现方式【二】(十三)

    前言 上一节我们详细讲解了认证及其基本信息,这一节我们通过两种不同方式来实现认证,并且分析如何合理的利用这两种方式,文中涉及到的基础知识,请参看上一篇文中,就不再叙述废话. 序言 对于所谓的认证说到底 ...

  7. Android中BroadcastReceiver的两种注册方式(静态和动态)详解

    今天我们一起来探讨下安卓中BroadcastReceiver组件以及详细分析下它的两种注册方式. BroadcastReceiver也就是"广播接收者"的意思,顾名思义,它就是用来 ...

  8. Redis两种持久化方式(RDB&AOF)

    爬虫和转载请注明原文地址;博客园蜗牛:http://www.cnblogs.com/tdws/p/5754706.html Redis所需内存 超过可用内存怎么办 Redis修改数据多线程并发—Red ...

  9. PlaceHolder的两种实现方式

    placeholder属性是HTML5 中为input添加的.在input上提供一个占位符,文字形式展示输入字段预期值的提示信息(hint),该字段会在输入为空时显示. 如 <input typ ...

随机推荐

  1. python+senium+chrome的简单爬虫脚本

    简述: 开始接触python写web自动化的脚本主要源于在公司订阅会议室,主要是使用python+selenium+chromedriver驱动chrome浏览器来完成的,其中部分python代码可以 ...

  2. 多线程之wait,notify,volatile,synchronized,sleep

    最近在学习多线程,现在进行总结一下吧.首先要了解一下以下几个名词. (1)wait:当线程调用wait()方法时,当前该线程会进入阻塞状态,且释放锁,使用wait方法的时候,必须配合synchroni ...

  3. PHP5+APACHE2.2配置

    注意这里用的是PHP5.3版本 在Windows系统上使用Apache2.2上模块化安装PHP5.3 PHP5.3增加了一些功能,如namespace,静态迟绑定等. 本篇文章将帮您如何安装PHP5. ...

  4. mysql数据库优化课程---12、mysql嵌套和链接查询

    mysql数据库优化课程---12.mysql嵌套和链接查询 一.总结 一句话总结:查询user表中存在的所有班级的信息? in distinct mysql> select * from cl ...

  5. js进阶---12-10、jquery绑定事件和解绑事件是什么

    js进阶---12-10.jquery绑定事件和解绑事件是什么 一.总结 一句话总结:on和off. 1.jquery如何给元素绑定事件? on方法 22 $('#btn1').on('click', ...

  6. 《Advanced Bash-scripting Guide》学习(一):对一个增强和广义的删除logfile的脚本的理解

    本文所选的例子来自于<Advanced Bash-scripting Gudie>一书,译者 杨春敏 黄毅 cleanup:一个增强和广义的删除logfile的脚本 #!/bin/bash ...

  7. macOS 10.12 任何来源

    sudo spctl --master-disable 从旧系统升级过来的仍然会显示“任何来源”选项,全新安装的将不再显示这个选项.可以通过上面的命令重新显示出此选项,非必要建议不要修改.

  8. 设置Qt程序在Windows开机后自动运行

    (转自:http://blog.csdn.net/weiren2006/article/details/7443362) 主要原理是修改Windows的注册表来实现的,Qt的QSettings提供了访 ...

  9. 在Virtualbox虚拟机中配置使用ROS Spark机器人(Orbbec Astra 和 Xtion)

    在虚拟机中配置使用ROS Spark,在Virtualbox中使用USB外设包括Orbbec Astra 和 Xtion深度摄像头和底盘. 虚拟机使用外接设备时,会遇到一些问题.不过随着虚拟机功能的逐 ...

  10. Delphi Xe4 游戏开发的技术选型.

    asphyre 是支持 FireMonkey的. 利用Firemonkey的跨平台接口.实现 win,mac,ios. 其它方案估计就得靠 FPC 了. 好处是多了输出Andriod的可能. zeng ...