android开发之自定义表情

本文介绍了在Android开发中实现图文并茂的功能,特别是在TextView和EditText中添加自定义表情。关键在于处理图片和文字的结合,以及在EditText中处理输入、删除和定位图片。遇到的问题包括使用gif格式图片可能导致的光标显示问题,建议使用静态图片以优化视觉效果。此外,还提到了监听EditText键盘事件的最佳实践,推荐使用addTextChangedListener而非setOnKeyListener来监听软键盘事件。
摘要由CSDN通过智能技术生成

所谓图文并茂是指在一篇文章里,图片和文字互相陪衬,使内容丰富多彩。例如我们最常使用到的聊天工具,都是这样。其实实现这个功能很简单,只用有一些细节性的问题需要注意,现在让我们一起来学习。


 

如图,最后一条消息就是图片加文字,重要代码:

SpannableString spannable = new SpannableString(str);//str为初始的字符串

Bitmap bm = BitmapFactory.decodeResource(getResources(), R.drawable.icon);

ImageSpan imgSpan = new ImageSpan(bm);

spannable.setSpan(imgSpan, start, end, Spanned.

SPAN_EXCLUSIVE_EXCLUSIVE);//此处实现是吧spannable从start位开始到end位结束替换成imgSpan

最后只用把spannable给TextView设置上即可。

一个简单的图文并茂就实现了,这是在TextView上,但是如果在EditText上,我们就应该注意到很多的问题了:

第一,加上图片后需要能够输入文字;

第二,图片需要能够删除;

第三,图片需要加在光标所显示的位置;

贴出点击表情后程序所做的事:

EditText edit = (EditTex
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值