`

android textview 自动链接网址 修改默认点击事件

阅读更多
1 修改XML文件即可,android:autoLink="web"
[code=xml"]
<TextView
        android:id="@+id/text_view"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:autoLink="all"
        android:text="@string/hello" />

autoLink有好几种类型:web phone all等。

2 修改链接的默认点击事件
public class HtmlAllTestActivity extends Activity{
	private TextView tv;
	
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);
		this.tv = (TextView)findViewById(R.id.text_view);
		
		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) {
				MyURLSpan myURLSpan = new MyURLSpan(url.getURL());
				style.setSpan(myURLSpan, sp.getSpanStart(url), sp.getSpanEnd(url), Spannable.SPAN_EXCLUSIVE_INCLUSIVE);
			}
			tv.setText(style);
		}
	}
	
	
	private  class MyURLSpan extends ClickableSpan {

		private String mUrl;

		MyURLSpan(String url) {
			mUrl = url;
		}

		@Override
		public void onClick(View widget) {
			Toast.makeText(HtmlAllTestActivity.this, mUrl, Toast.LENGTH_LONG).show();
			widget.setBackgroundColor(Color.parseColor("#00000000"));
		}
	}
}
分享到:
评论

相关推荐

    Android编程开发之TextView文字显示和修改方法(附TextView属性介绍)

    在Android编程中,我们经常需要对TextView进行操作,包括显示和修改文字内容。本篇文章将详细讲解如何实现这些功能,并介绍TextView的一些常用属性。 1. 创建与布局 在XML布局文件中,TextView可以通过以下方式定义...

    Android Studio 学习笔记-新手入门-(1)第一个案例

    5. **运行应用**:连接Android设备或者启动模拟器,点击顶部工具栏的运行按钮(绿色的三角形),Android Studio会自动编译项目并安装到设备上。运行后,你将在屏幕上看到TextView和Button。点击Button,你会看到一个...

    Android demo Android helloworld

    3. **运行应用程序**:配置好Android模拟器或连接真机设备后,点击Android Studio工具栏上的运行按钮,程序将在设备上启动并显示“Hello, World!”。 4. **SensoDemo**:在"压缩包子文件的文件名称列表"中提到的`...

    android studio项目实例.docx

    创建完项目之后,Android Studio会自动为项目生成基础结构,主要包括以下几个部分: 1. **activity_main.xml**:这是定义应用用户界面的XML文件,通常位于`app/src/main/res/layout/`目录下。 2. **MainActivity....

    androidstudio入门开发安装使用经验合集

    3. 运行应用:连接Android模拟器或物理设备,点击顶部栏的绿色运行按钮,Android Studio会自动编译并部署应用到设备上。 4. 调试与测试:Android Studio提供了强大的调试工具,可以在代码中设置断点,查看变量值,...

    Google Android SDK开发范例大全(PDF高清完整版1)(4-1)

    Google Android SDK开发范例大全(完整版)共4个分卷 目录 第1章 了解.深入.动手做. 1.1 红透半边天的Android 1.2 本书目的及涵盖范例范围 1.3 如何阅读本书 1.4 使用本书范例 1.5 参考网站 第2章 Android初体验 2.1...

    Google Android SDK开发范例大全(PDF完整版4)(4-4)

    Google Android SDK开发范例大全(完整版)共4个分卷 目录 第1章 了解.深入.动手做. 1.1 红透半边天的Android 1.2 本书目的及涵盖范例范围 1.3 如何阅读本书 1.4 使用本书范例 1.5 参考网站 第2章 Android初体验 2.1...

    Android开发入门 实例 helloworld

    2. **事件处理**:了解如何处理用户的触摸事件,如点击按钮。 3. **组件交互**:学习如何在Activity之间传递数据,或者使用Intent启动其他应用组件。 4. **数据存储**:掌握在Android中保存数据的不同方法,如Shared...

    Google Android SDK开发范例大全(PDF高清完整版3)(4-3)

    Google Android SDK开发范例大全(完整版)共4个分卷 目录 第1章 了解.深入.动手做. 1.1 红透半边天的Android 1.2 本书目的及涵盖范例范围 1.3 如何阅读本书 1.4 使用本书范例 1.5 参考网站 第2章 Android初体验 2.1...

    新版Android开发教程.rar

    ----------------------------------- Android 编程基础 1 封面----------------------------------- Android 编程基础 2 开放手机联盟 --Open --Open --Open --Open Handset Handset Handset Handset Alliance ...

    Android初体验

    这时,Android Studio会自动生成基本的项目结构。 ### 3. 理解项目结构 - `app`:应用模块,包含源代码、资源文件等。 - `build.gradle`:构建文件,定义项目的构建配置。 - `MainActivity.java`:主活动类,应用...

    Android-APP开发入门教程.docx

    2. **运行应用**:在IDE中点击运行按钮,应用将自动部署到连接的设备上,并启动运行。 3. **调试**:利用IDE提供的调试工具,如断点、变量查看等,对应用进行调试和优化。 **五、打包与发布** 1. **生成APK**:在...

    android studio开发app项目

    Android Studio使用Gradle作为默认的构建工具,Gradle允许灵活地配置构建过程,管理依赖关系,并自动生成APK。 总结,Android Studio为开发者提供了高效开发Android应用的平台,结合各种UI组件和布局管理器,可以...

    Google Android SDK开发范例大全的目录

    3.3 更改TextView文字颜色——引用Drawable颜色常数及背景色 3.4 置换TextView文字——CharSequence数据类型与ResourceID应用 3.5 取得手机屏幕大小——DisplayMetrics取得画面宽高的方法 3.6 样式化的定型对象——...

    android常用控件

    - **getAutoLinkMask()**:获取自动连接掩码。 - **setTextColor()**:设置文本颜色。 - **setHighlightColor()**:设置高亮颜色。 - **setShadowLayer()**:设置阴影效果。 - **setHintTextColor()**:设置提示文字...

    android 程序设计入门

    - **修改Activity类**:修改默认生成的Activity类中的代码,使其能够在屏幕上显示文本。 ```java public class HelloAndroid extends Activity { @Override protected void onCreate(Bundle savedInstanceState)...

    Google Android SDK开发范例大全(完整版附部分源码).pdf

    Google Android SDK开发范例大全(完整版) 包含部分书中源码 目录 第1章 了解.深入.动手做. 1.1 红透半边天的Android 1.2 本书目的及涵盖范例范围 1.3 如何阅读本书 1.4 使用本书范例 1.5 参考网站 第2章 ...

    android listView

    在Android开发中,ListView是一种常用的组件,用于展示可滚动的多行数据列表。它在许多应用中发挥着关键作用,特别是在处理大量数据时。本文将深入探讨如何在ListView的item被选中时更改字体颜色,这是一个初级...

    Google.Android.SDK开发范例大全.zip

    Android Studio使用Gradle作为默认的构建系统,它支持灵活的构建配置,可以自动化构建、打包和发布应用。 十二、Google Play服务 Google Play服务提供了许多额外的功能,如Google登录、地图服务、推送通知等。...

Global site tag (gtag.js) - Google Analytics