展会信息港展会大全

在EditText中插入表情图片 (CharacterStyle&SpannableString)
来源:互联网   发布日期:2016-01-06 19:12:07   浏览:2368次  

导读:EditText通常用于显示文字,但有时候也需要在文字中夹杂一些图片,比如QQ中就可以使用表情图片,又比如需要的文字高亮显示等等,如何在android中也做到这样呢?记得android中有个android.text包,这里提供了对文......

EditText通常用于显示文字,但有时候也需要在文字中夹杂一些图片,比如QQ中就可以使用表情图片,又比如需要的文字高亮显示等等,如何在android中也做到这样呢?

记得android中有个android.text包,这里提供了对文本的强大的处理功能。

添加图片主要用SpannableString和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);

赞助本站

人工智能实验室

相关热词: EditText 表情图片

AiLab云推荐
推荐内容
展开

热门栏目HotCates

Copyright © 2010-2024 AiLab Team. 人工智能实验室 版权所有    关于我们 | 联系我们 | 广告服务 | 公司动态 | 免责声明 | 隐私条款 | 工作机会 | 展会港