还有就是把图片插入到EditText中去。
代码如下:
/**
*
* 把表情插入到输入框中去
*
* @param key
*
* 点击头像真实代表的值
*
* @see insertImage
*/
public void insertImage(String key)
{
// 将随机获得的图像追加到EditText控件的最后
int location = textEdit.getSelectionStart();
//获取EditText的文字
Editable edit = textEdit.getEditableText();
SpannableString spannable = getImageValue(key);
if (location < 0 || location >= edit.length())
{
edit.append(spannable);
}
else
{
//光标所在位置插入文字
edit.insert(location, spannable);
}
layout_face.setVisibility(View.GONE);
textEdit.clearFocus();
}
getImageValue方法和上面插入到TextView中去的方法差不多,如下:
/**
*
* 把表情插入到输入框中去
*
* @param key
*
* 点击头像真实代表的值
*
* @see getImageValue
*/
public SpannableString getImageValue(String key)
{
try
{
String imageId = BootApp.getImageMap().get(key);
// 根据随机产生的1至9的整数从R.drawable类中获得相应资源ID(静态变量)的Field对象
Field field = R.drawable.class.getDeclaredField(imageId);
// 获得资源ID的值,也就是静态变量的值
int resourceId = Integer.parseInt(field.get(null).toString());
// 根据资源ID获得资源图像的Bitmap对象
Bitmap bitmap = BitmapFactory.decodeResource(Global.getContext().getResources(), resourceId);
// 根据Bitmap对象创建ImageSpan对象
ImageSpan imageSpan = new ImageSpan(Global.getContext(), bitmap);
// 创建一个SpannableString对象,以便插入用ImageSpan对象封装的图像
SpannableString spannableString = new SpannableString(key);
// 用ImageSpan对象替换face
spannableString.setSpan(imageSpan, 0, key.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
return spannableString;
}
catch (Exception e)
{
e.printStackTrace();
Log.e("onClick_RandomFace", "Insert into image is error......");
}
return null;
}
分享到:
相关推荐
然而,我们常常需要在应用程序中添加一些交互性和趣味性,比如在聊天、评论或者社交功能中显示表情图片。这就涉及到了如何在TextView中显示表情图片的技术。以下是一些关于这个主题的重要知识点: 1. **Unicode表情...
本文将深入探讨如何在Android平台上构建自定义的表情功能,包括表情的显示、选择、输入以及与服务器的交互等核心环节。 首先,我们需要理解表情功能的基本构成。在Android应用中,表情通常分为两部分:静态表情(如...
Android 4.4(KitKat)版本开始,系统内置了对Unicode 6.0标准的Emoji支持,这意味着大部分现代Android设备都可以显示基本的Emoji表情。然而,为了确保在所有设备上都能正确显示,开发者需要考虑不同Android版本和...
在Android开发中,引入和展示Emoji表情已经成为许多社交应用的标准功能。这主要涉及到自定义TextView以支持Unicode编码的表情字符,并确保它们在输入框中正确显示。以下是对这一主题的详细阐述。 首先,我们需要...
- 设计一个可滑动或点击展开的表情面板,用于显示表情列表。面板通常分为多个类别,如常用表情、最近使用表情等。 - 实现表情面板的滚动和点击事件监听,点击表情后将其插入到输入框。 5. **表情数据库**: - ...
在Android开发中,动态表情的显示是提升用户体验的重要一环,尤其是在社交应用或者消息传递类应用中。Android系统原生支持静态的GIF图像显示,但处理动态GIF则需要额外的工作。本教程将深入探讨如何在Android的...
本文将深入探讨如何在Android平台上处理和显示表情文字,包括基本概念、实现方式以及相关的技术难点。 一、表情文字概述 表情文字,也被称为颜文字或emoji,是通过特定字符组合或图形来表达情感或情绪的一种方式。...
本文将详细介绍如何在Android中实现`EditText`禁止输入法表情的功能,并提供相关代码示例。 首先,我们需要理解Android中的输入法(IME,Input Method Editor)是如何工作的。当用户在`EditText`中输入时,输入法会...
- 项目可能使用了自定义的XML资源文件来存储表情图片,或者直接使用了Android系统的emoji字体来显示表情。 2. **UI设计与布局**: - 为了实现“仿微信、QQ聊天”的效果,开发者可能使用了RecyclerView或...
在需要显示表情键盘的Activity或Fragment中,实例化`EmoticonsKeyboard`,并在适当的时候(如用户点击表情图标)显示它。同时,确保在输入框失去焦点或用户选择其他操作时隐藏表情键盘。 6. **处理表情输入**: ...
在Android开发中,实现类似QQ的表情输入和显示功能是一项常见的需求,特别是在聊天应用或者社交软件中。本项目通过源码的方式,为我们展示了如何在Android应用中实现这一特性。以下是关于这个话题的一些关键知识点:...
- 集成到UI:将`EmojiconTextView`添加到聊天输入框,通过`EmojiPopup`在需要时显示表情面板。 **5. 源码分析** 通过阅读"emojicon"的源码,开发者可以学习到如何处理自定义View的绘制、触摸事件以及数据绑定等...
这个压缩包文件"安卓Emoji表情相关-Android实现表情输入.rar"可能包含了一个示例项目,帮助开发者了解和学习如何在Android应用中集成和使用Emoji表情。尽管描述中提到无法验证所有内容,但我们可以从这个主题中探讨...
在代码中,可以通过 Picasso、Glide 或者 Android 自带的 ImageLoader 等库来加载和显示表情。 ```xml android:id="@+id/emoji_image_view" android:layout_width="wrap_content" android:layout_height="wrap_...
在Android开发中,模仿QQ聊天表情功能是一项常见的需求,它涉及到UI设计、动画处理以及数据序列化等多个技术点。下面将详细阐述这个话题中的关键知识点。 1. **UI设计**: - 表情面板布局:设计一个可以展示表情的...
表情面板通常是一个GridView或者RecyclerView,显示表情图片,点击后将对应的emoji代码插入到输入框。 3. **处理表情输入**:当用户点击表情时,需要将选中的表情代码(通常是Unicode编码)插入到输入框的光标位置...
- 设计一个表情面板布局,可以是GridView、RecyclerView或者其他适合展示多行多列的视图,用于显示表情图片。 - 在布局中,为每个表情设置点击事件,点击时获取对应的表情图片或Unicode值。 3. **点击menu键插入...
标题提到的“android支持第三方输入法输入emoji表情etittext和textview都可以”,这表明Android系统允许用户通过第三方输入法(如搜狗输入法)输入emoji,并且这些表情可以在EditText和TextView中正确地展示出来。...
在Android应用开发中,实现类似QQ的表情功能是一项常见的需求,特别是在聊天、社交或者论坛类的应用中。QQ表情功能的成功在于其丰富的表情库和便捷的使用方式,为用户提供了一种直观且富有表现力的沟通手段。下面...