在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. php上传文件后无法移动到指定目录的解决

    从浏览器访问而触发PHP脚本运行的用户是 apache 用户 无法移动文件的原因主要是目标目录没有写入权限 1.将目标目录权限设置为 777 #chmod 777 tar_dir 2.将目标目录用户和 ...

  2. Swift学习笔记 - 位移枚举的按位或运算

    在OC里面我们经常遇到一些枚举值可以多选的,需要用或运算来把这些枚举值链接起来,这样的我们称为位移枚举,但是在swift里面却不能这么做,下面来讲解一下如何在swift里面使用 OC的位移枚举的区分 ...

  3. 从reduce函数说起...

    reduce函数:  方法接收一个函数作为累加器(accumulator),数组中的每个值(从左到右)开始缩减,最终为一个值, 最终返回的要看函数内部return的内容. 1. 累加器: var ar ...

  4. Javascript -- 级联菜单, javascript解析xml文件

    1. cities.xml 保存省份和城市 <?xml version="1.0" encoding="GB2312"?> <china> ...

  5. PermutationSequence,求第k个全排列

    问题描述:给定一个数组,数组里面元素不重复,求第k个全排列. 算法分析:这道题就是用到取商取模运算. public String getPermutation(int n, int k) { // i ...

  6. tensorflow conv2d的padding解释以及参数解释

    1.padding的方式: 说明: 1.摘录自http://stackoverflow.com/questions/37674306/what-is-the-difference-between-sa ...

  7. MFC--自定义CMFCTabCtrl的实现

    在MFC实现桌面程序时,可能会用到TabView效果,我实现的是最基本的效果,如下图: 下面介绍详细的实现过程,如果需要效果更好看些,自行美化. 1.  创建自定义MFCTabCtrl类MyMFCTa ...

  8. 如何退出telnet

    ctrl键+ENter键 然后输入 进入telnet 命令 quit

  9. 【Java】final关键字

    1.final数据 (1)基本类型      数值恒定不变 (2)对象引用      引用恒定不变,初始化的时候指向一个对象后,无法改变为另一个对象,但是对象本身可以修改 2.final方法 可以把方 ...

  10. Four-operations: 使用node.js实现四则运算程序

    一. 项目基本信息 项目成员: 陈旭钦, 郭鹏燕 项目仓库: https://github.com/Yanzery/Four-operations 二. PSP2.1表格 PSP2.1 Persona ...