打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
对同一个TextView设置不同的颜色、字体、事件、图片
转自Google的代码
  1. package lab.sodino.android;

  2. import android.app.Activity;
  3. import android.graphics.Color;
  4. import android.graphics.Typeface;
  5. import android.graphics.drawable.Drawable;
  6. import android.os.Bundle;
  7. import android.text.Spannable;
  8. import android.text.SpannableString;
  9. import android.text.Spanned;
  10. import android.text.method.LinkMovementMethod;
  11. import android.text.style.ForegroundColorSpan;
  12. import android.text.style.ImageSpan;
  13. import android.text.style.StrikethroughSpan;
  14. import android.text.style.StyleSpan;
  15. import android.text.style.URLSpan;
  16. import android.text.style.UnderlineSpan;
  17. import android.widget.TextView;

  18. public class AndroidAct extends Activity {
  19.         /** Called when the activity is first created. */
  20.         @Override
  21.         public void onCreate(Bundle savedInstanceState) {
  22.                 super.onCreate(savedInstanceState);
  23.                 TextView txtInfo = new TextView(this);
  24.                 SpannableString ss = new SpannableString("红色打电话斜体删除线绿色下划线图片:.");
  25.                 ss.setSpan(new ForegroundColorSpan(Color.RED), 0, 2,
  26.                                 Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
  27.                 ss.setSpan(new URLSpan("tel:4155551212"), 2, 5,
  28.                                 Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
  29.                 ss.setSpan(new StyleSpan(Typeface.BOLD_ITALIC), 5, 7,
  30.                                 Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
  31.                 ss.setSpan(new StrikethroughSpan(), 7, 10,
  32.                                 Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
  33.                 ss.setSpan(new UnderlineSpan(), 10, 16,
  34.                                 Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
  35.                 ss.setSpan(new ForegroundColorSpan(Color.GREEN), 10, 15,
  36.                                 Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
  37.                 Drawable d = getResources().getDrawable(R.drawable.icon);
  38.                 d.setBounds(0, 0, d.getIntrinsicWidth(), d.getIntrinsicHeight());
  39.                 ImageSpan span = new ImageSpan(d, ImageSpan.ALIGN_BASELINE);
  40.                 ss.setSpan(span, 18, 19, Spannable.SPAN_INCLUSIVE_EXCLUSIVE);
  41.                 txtInfo.setText(ss);
  42.                 txtInfo.setMovementMethod(LinkMovementMethod.getInstance());
  43.                 setContentView(txtInfo);
  44.         }
  45. }
复制代码
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
【工作笔记】android TextView、EditText对部分内容设置颜色、字体、超链接、图片
在EditText中插入表情图片 (CharacterStyle&SpannableStr...
花式TextView,探索 Android 中的 Span
Android开发技巧之在a标签或TextView控件中单击链接弹出Activity(自定义动作)
[Android教程]TextView使用SpannableString设置复合文本 | 萝卜白菜的小站
Android实现TextView中文字链接的4种方式介绍及代码
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服