SpannableString和ImageSpan类的简单介绍
2015-06-21 17:28
197 查看
SpannableString可以个推TextView显示不同的颜色和样式
ImageSpan可以实现在文字中间添加图片
其实并没有什么东西。只是知不知道,这个实在实习的时候看到了以前的人写的代码觉得很腻害就百度以一下
Drawable drawable = getResources().getDrawable(id);
drawable.setBounds(0, 0, drawable.getIntrinsicWidth(), drawable.getIntrinsicHeight());
//需要处理的文本,[smile]是需要被替代的文本
SpannableString spannable = new SpannableString(getText().toString()+"[smile]");
//要让图片替代指定的文字就要用ImageSpan
ImageSpan span = new ImageSpan(drawable, ImageSpan.ALIGN_BASELINE);
//开始替换,注意第2和第3个参数表示从哪里开始替换到哪里替换结束(start和end)
//最后一个参数类似数学中的集合,[5,12)表示从5到12,包括5但不包括12
spannable.setSpan(span, getText().length(),getText().length()+"[smile]".length(),
Spannable.SPAN_INCLUSIVE_EXCLUSIVE);
setText(spannable);
ImageSpan可以实现在文字中间添加图片
其实并没有什么东西。只是知不知道,这个实在实习的时候看到了以前的人写的代码觉得很腻害就百度以一下
Drawable drawable = getResources().getDrawable(id);
drawable.setBounds(0, 0, drawable.getIntrinsicWidth(), drawable.getIntrinsicHeight());
//需要处理的文本,[smile]是需要被替代的文本
SpannableString spannable = new SpannableString(getText().toString()+"[smile]");
//要让图片替代指定的文字就要用ImageSpan
ImageSpan span = new ImageSpan(drawable, ImageSpan.ALIGN_BASELINE);
//开始替换,注意第2和第3个参数表示从哪里开始替换到哪里替换结束(start和end)
//最后一个参数类似数学中的集合,[5,12)表示从5到12,包括5但不包括12
spannable.setSpan(span, getText().length(),getText().length()+"[smile]".length(),
Spannable.SPAN_INCLUSIVE_EXCLUSIVE);
setText(spannable);
相关文章推荐
- BZOJ 4128 Matrix Baby-Step-Giant-Step+矩阵求逆
- Coursera-Machine Learning 笔记(二)Linear Regression with multiple variables
- ftoa浮法成字符串
- Linked List Cycle
- git 远程协作的主要命令
- spring 定时任务相关链接
- arm-linux-gcc-4.3.2安装步骤
- Netlink创建的RTM_NEWROUTE消息
- 黑马程序员——Java基础——泛型
- 15第十六周项目一——平方根的异常
- Android 官方推荐 : DialogFragment 创建对话框
- RegExp正则校验之Java及R测试
- 删除Ubuntu多余的开机启动项(旧的内核)
- MySQL——病型数据库与分区
- 餐饮美食菜品推荐数据表
- 如何查看服务器机房位置
- Word Break
- Scanner 的使用——空字符串的读入
- MySQL——复制
- 如何判断用paint画出的图形的坐标是在哪里?