protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.textview);
TextView txtInfo =(TextView)findViewById(R.id.tv);
//SpannableString文本类,包含不可变的文本但可以用已有对象替换和分离。
//可变文本类参考SpannableStringBuilder
SpannableString ss = new SpannableString("红色打电话斜体删除线绿色下划线图片:.");
//用颜色标记文本
ss.setSpan(new ForegroundColorSpan(Color.RED), 0, 2,
//setSpan时需要指定的 flag,Spanned.SPAN_EXCLUSIVE_EXCLUSIVE(前后都不包括).
Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
//用超链接标记文本
ss.setSpan(new URLSpan("tel:4155551212"), 2, 5,
Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
//用样式标记文本(斜体)
ss.setSpan(new StyleSpan(Typeface.BOLD_ITALIC), 5, 7,
Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
//用删除线标记文本
ss.setSpan(new StrikethroughSpan(), 7, 10,
Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
//用下划线标记文本
ss.setSpan(new UnderlineSpan(), 10, 16,
Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
//用颜色标记
ss.setSpan(new ForegroundColorSpan(Color.GREEN), 10, 13,
Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
//获取Drawable资源
Drawable d = getResources().getDrawable(R.drawable.icon);
d.setBounds(0, 0, d.getIntrinsicWidth(), d.getIntrinsicHeight());
//创建ImageSpan
ImageSpan span = new ImageSpan(d, ImageSpan.ALIGN_BASELINE);
//用ImageSpan替换文本
ss.setSpan(span, 18, 19, Spannable.SPAN_INCLUSIVE_EXCLUSIVE);
txtInfo.setText(ss);
txtInfo.setMovementMethod(LinkMovementMethod.getInstance());
}
相关API文档请查看:http://developer.android.com/reference/android/text/SpannableString.html
好吧,我又是转的。嘎嘎~ http://blog.sina.com.cn/s/blog_5da93c8f0100ul3z.html
分享到:
相关推荐
在Android开发中,有时我们需要在同一个TextView中展示不同大小的文字,并让它们保持垂直居中对齐。这可以通过使用SpannableString来实现。SpannableString是Android SDK提供的一种可操作字符串对象,允许我们在字符...
下面我们将详细介绍如何通过TextView实现超链接的跳转,并结合提供的`HyperLinkDemo`示例进行讲解。 首先,让我们了解基本的步骤: 1. **设置HTML文本**: 你可以将带有超链接的文本以HTML格式写入字符串资源中。...
在Android开发中,文本展示是常见的需求之一,而TextView作为主要的文本展示控件,有时候我们需要在其中实现更丰富的展示效果,比如插入表情、添加超链接、改变文字大小和加粗等。本教程将深入讲解如何利用...
在Android开发中,TextView是用于显示文本的基本组件。然而,标准的TextView往往不能满足开发者所有的需求,例如处理链接点击和长按事件。本篇将详细讲解如何在Android中自定义TextView,实现链接的点击和长按事件,...
在Android开发中,TextView是用于显示单行或多行文本的常用组件。然而,当TextView包含多行文本并需要左右对齐时,由于不同设备屏幕...通过学习和理解这些代码,可以更好地掌握在Android中实现TextView左右对齐的技巧。
3. **SpannableString与ImageSpan**:如果表情是以单独的图片资源存在的,可以使用`SpannableString`和`ImageSpan`结合。首先,你需要将每个表情图片转换为`Drawable`,然后创建`ImageSpan`对象,并将其应用于`...
总结来说,Android原生TextView不直接支持GIF,但通过结合SpannableString和第三方库Glide,我们可以实现TextView的图文混排并支持GIF展示。在项目中,根据需求选择合适的实现方式,既能提升用户体验,又要注意性能...
在Android开发中,`TextView`是用于展示文本的最基础且重要的组件。它不仅可以显示单行文本,还能处理复杂的文字排版,包括自动换行。本文将深入探讨`TextView`在处理文字排版和换行方面的知识,以及如何优化其性能...
在Android开发中,TextView是应用界面中最常见的组件之一,它用于显示文本信息。然而,TextView并不仅仅局限于基本的文本展示,通过自定义和扩展,我们可以实现各种炫酷的效果,为用户带来更丰富的视觉体验。本篇...
3. **TextView与SpannableString结合**:将SpannableString赋值给TextView的`setText()`方法,这样设置的样式就会在TextView中生效。 ```java textView.setText(spannableString); ``` 4. **不同类型的Span**:...
总结来说,Android的TextView通过结合SpannableString和各种Span对象,可以实现丰富的文本和图片混排效果。通过熟练掌握这些技巧,开发者可以创建更具吸引力和交互性的用户界面。在实际应用中,应根据需求灵活运用,...
要实现在TextView中插入图片,Android提供了一种叫做SpannableString的类。SpannableString允许我们在字符串的不同部分应用不同的样式,包括插入图片。以下是一个简单的例子: 1. 首先,我们需要一个ImageView对象...
在Android开发中,TextView是用于显示文本的基本组件。在许多情况下,我们可能需要对TextView中的文本进行更细致的控制,比如设置某一段文字的颜色或背景色。这涉及到Android的富文本处理,通常会用到Spannable和...
本示例“安卓Android源码——textView显示图片的例子_TextImage.zip”将教你如何在TextView中嵌入图片,使得文本与图像结合,提供更丰富的用户界面。 在Android中,TextView通常用于展示简单的文本信息,如标题、...
在Android开发中,`TextView`是UI设计中最基础且至关重要的组件之一,它用于显示文本信息,无论是简单的标题、按钮文字还是长篇的段落,`TextView`都能胜任。本篇将深入解析`TextView`的各个方面,帮助你更好地理解...
在实际项目中,TextView往往与其他组件结合使用,例如与Button配合显示按钮文字,与ImageView组合形成图文并茂的显示效果等。理解并熟练掌握TextView的使用,对于提高Android应用的用户体验至关重要。
在Android开发中,TextView是用于显示单行或多行文本的视图组件,它在用户界面设计中扮演着重要角色。本资源"安卓textView相关-代码动态改变某些textview文本颜色及其大小的方式.rar"包含了关于如何在运行时动态修改...
总的来说,Android中的`TextView`垂直滚动功能通过结合XML属性和Java代码可以灵活地实现。开发者可以根据需求调整滚动行为,提供更好的用户体验。在`VerticalScrollTextView_Demo`项目中,你可以进一步了解这些概念...
在Android开发中,`TextView` 是一个非常常用的控件,用于显示单行或多行文本。在某些场景下,我们可能需要根据文本内容的长度动态地调整`TextView`的高度,以确保所有文本都能完整显示。本篇文章将深入探讨如何实现...
在实际项目中,`SpannableString`经常与`TextView`、`EditText`和`Notification`等组件结合使用,提供丰富的文本展示效果。例如,在消息通知中,可以使用`SpannableString`来高亮关键字或者设置特定样式的链接。 `...