`
喧嚣求静
  • 浏览: 581482 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

android textview 部分文字加颜色并可点击

 
阅读更多
package com.example.urlspantextviewclick;

import android.os.Bundle;
import android.app.Activity;
import android.graphics.Color;
import android.text.Html;
import android.text.Spannable;
import android.text.SpannableString;
import android.text.Spanned;
import android.text.method.LinkMovementMethod;
import android.text.style.ClickableSpan;
import android.text.style.ForegroundColorSpan;
import android.view.Menu;
import android.view.View;
import android.widget.TextView;
import android.widget.Toast;

public class MainActivity extends Activity {

	private TextView t1;
	
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		t1=(TextView)findViewById(R.id.txt);
		CharSequence str=getText(R.string.hello_world);
		SpannableString spannableString1 = new SpannableString(str);
		
		
		spannableString1.setSpan(new ClickableSpan(){
			@Override
			public void onClick(View widget) {
				Toast.makeText(getApplicationContext(), "who hit me", Toast.LENGTH_SHORT).show();
				
			}
		}, str.length()-3, str.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
		spannableString1.setSpan(new ForegroundColorSpan(Color.RED),str.length()-3, str.length(),Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
		t1.setText(spannableString1);
		t1.setMovementMethod(LinkMovementMethod.getInstance());
		//Html.fromHtml(source)
		//spannableString1.
		/**to see http://www.cnblogs.com/mxgsa/archive/2012/11/15/2760256.html
		 * Android TextView 支持的HTML标签
		•<a href="...">
		•<b>
		•<big>
		•<blockquote>
		•<br>
		•<cite>
		•<dfn>
		•<div align="...">
		•<em>
		•<font size="..." color="..." face="...">
		•<h1>
		•<h2>
		•<h3>
		•<h4>
		•<h5>
		•<h6>
		•<i>
		•<img src="...">
		•<p>
		•<small>
		•<strike>
		•<strong>
		•<sub>
		•<sup>
		•<tt>
		•<u>
      */
	}

	@Override
	public boolean onCreateOptionsMenu(Menu menu) {
		// Inflate the menu; this adds items to the action bar if it is present.
		getMenuInflater().inflate(R.menu.main, menu);
		return true;
	}

}

 

0
0
分享到:
评论

相关推荐

    android TextView 文字部分渐变

    通过上述步骤,我们成功地实现了TextView文字部分的渐变色效果。在实际项目中,你可以根据需求调整`LinearGradient`的颜色、位置和方向,以及`GradientTextSpan`应用的范围,以达到理想的视觉效果。同时,`...

    TextView中,设置指定部分文字改变颜色,和指定部分文字点击事件

    在一些场景下,我们可能需要对`TextView`中的特定部分文字进行颜色变化,甚至为这部分文字添加点击事件,以实现更复杂的用户交互。下面我们将详细探讨如何实现这些功能。 ### 1. 设置指定部分文字颜色 `TextView`...

    Android TextView 文字片点击特效、点击事件监听实现了TextView 文字片段 点击_

    Android TextView 文字片点击特效、点击事件监听实现了TextView 文字片段 点击_长按 事件监听 以及点击特效关键技术 在自定义Span中对TextPaint的color、bgcolor等属性设置选中时的文字颜色,背景色、 在自定义...

    android textview 部分文本变色,点击跳转

    在Android开发中,`TextView`是用于展示文本的常用组件,但有时我们希望部分文本具有不同的样式,比如颜色不同,甚至能响应用户的点击事件,跳转到特定的链接。这通常涉及到`SpannableString`、`ClickableSpan`等...

    TextView部分文字点击事件

    值得注意的是,如果需要处理多个可点击部分,可以重复以上步骤,为每个部分创建新的ClickableSpan实例并设置其范围。 总的来说,利用Spannable和ClickableSpan,我们可以为Android应用中的TextView实现灵活且交互性...

    Android Textview颜色并可以点击

    这篇内容将深入讲解如何在Android中实现TextView的文字颜色变换及点击响应。 首先,我们要了解如何改变TextView的文字颜色。在XML布局文件中,我们可以直接通过`android:textColor`属性来设置文本颜色。例如,如果...

    android开发之改变TextView部分字体的颜色和大小工具类

    本人封装的一个工具类,可对textview中的部分字体修改颜色和大小。希望对大家有所帮助! 有四个构造方法,可以改变字体大小和颜色或者默认TextView本身的颜色大小都可以!! 代码中都写又详细的注释!

    设置TextView部分文字的颜色和背景(高亮显示)

    本篇将详细介绍如何设置TextView的部分文字颜色和背景,使其更加醒目。 首先,我们可以使用`SpannableString`和`SpannableStringBuilder`来实现这个功能。这两个类是可变的字符串,可以添加不同的样式,如颜色、...

    Android 设置textview某段字体颜色或者背景

    在许多情况下,我们可能需要对TextView中的文本进行更细致的控制,比如设置某一段文字的颜色或背景色。这涉及到Android的富文本处理,通常会用到Spannable和SpannableString类。本篇文章将详细讲解如何在Android中...

    android动态设置TextView字体颜色

    在Android开发中,动态设置TextView字体颜色是一项常见的需求。开发者可能需要根据用户的操作、应用程序的状态或者数据的变化来改变TextView的文字颜色。这篇博文“android动态设置TextView字体颜色”为我们揭示了...

    android中TextView高亮并可以点击

    5. **高亮显示**: 为了高亮显示@人、话题或链接,我们可以在创建ClickableSpan时设置不同的前景色,或者在`updateDrawState()`中改变文字的样式,例如设置下划线或改变字体颜色。 6. **适配多行文本**: 当TextView...

    Android TextView查看更多

    例如,可以添加一个背景颜色,改变文字颜色,或者使用自定义的Drawable资源。 ```xml &lt;TextView ... android:background="?android:attr/selectableItemBackground" android:textColor="@color/colorPrimary" ...

    Android 根据搜索内容实现TextView中的文字部分加粗

    本文将深入讲解如何在Android中根据搜索内容实现TextView中的文字部分加粗。 首先,我们需要理解Android中的TextView。TextView是Android UI框架中的一个基本组件,用于显示单行或多行文本。通过设置其属性,我们...

    Android中TextView实现部分文字可点击跳转

    Android 中 TextView 实现部分文字可点击跳转 Android 中的 TextView 控件可以通过使用 SpannableString 和 ClickableSpan 来实现部分文字可点击跳转的功能。下面是实现的详细介绍: 首先,我们需要创建一个继承自...

    Android 一个TextView中设置不同字体大小和颜色

    String text = "这段文字中,一部分是大字体,一部分是小字体,颜色也不同。"; SpannableString ss = new SpannableString(text); ``` 2. 应用不同字体大小: 我们可以使用CharacterStyle接口的子类,如 ...

    android设置TextView中不同的文字字体大小且垂直居中显示

    SpannableString是Android SDK提供的一种可操作字符串对象,允许我们在字符串的不同部分应用不同的格式,如颜色、字体大小、样式等。 首先,我们需要了解TextView的基本属性。TextView是Android UI布局中的一个基本...

    Android TextView中文字设置超链接、颜色、字体

    当我们在TextView的文本中插入URL时,可以使用`android:autoLink="web"`属性,让系统自动识别并转换为可点击的超链接。但这种方法可能无法满足所有需求,例如自定义链接样式。此时,我们可以使用`SpannableString`和...

Global site tag (gtag.js) - Google Analytics