`
zhuqiang1002
  • 浏览: 12034 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

android 显示表情 (二)

 
阅读更多

还有就是把图片插入到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;
    }
分享到:
评论

相关推荐

    android textview显示表情图片

    然而,我们常常需要在应用程序中添加一些交互性和趣味性,比如在聊天、评论或者社交功能中显示表情图片。这就涉及到了如何在TextView中显示表情图片的技术。以下是一些关于这个主题的重要知识点: 1. **Unicode表情...

    Android实现表情功能

    本文将深入探讨如何在Android平台上构建自定义的表情功能,包括表情的显示、选择、输入以及与服务器的交互等核心环节。 首先,我们需要理解表情功能的基本构成。在Android应用中,表情通常分为两部分:静态表情(如...

    Android使用Emoji表情Demo

    Android 4.4(KitKat)版本开始,系统内置了对Unicode 6.0标准的Emoji支持,这意味着大部分现代Android设备都可以显示基本的Emoji表情。然而,为了确保在所有设备上都能正确显示,开发者需要考虑不同Android版本和...

    android Emoji表情,通过自定义textview能够实现表情包在输入框中展示

    在Android开发中,引入和展示Emoji表情已经成为许多社交应用的标准功能。这主要涉及到自定义TextView以支持Unicode编码的表情字符,并确保它们在输入框中正确显示。以下是对这一主题的详细阐述。 首先,我们需要...

    Android仿 QQ 微信 表情

    - 设计一个可滑动或点击展开的表情面板,用于显示表情列表。面板通常分为多个类别,如常用表情、最近使用表情等。 - 实现表情面板的滚动和点击事件监听,点击表情后将其插入到输入框。 5. **表情数据库**: - ...

    Android 动态表情 显示

    在Android开发中,动态表情的显示是提升用户体验的重要一环,尤其是在社交应用或者消息传递类应用中。Android系统原生支持静态的GIF图像显示,但处理动态GIF则需要额外的工作。本教程将深入探讨如何在Android的...

    Android表情文字EmotionText

    本文将深入探讨如何在Android平台上处理和显示表情文字,包括基本概念、实现方式以及相关的技术难点。 一、表情文字概述 表情文字,也被称为颜文字或emoji,是通过特定字符组合或图形来表达情感或情绪的一种方式。...

    android EditText禁止输入法表情

    本文将详细介绍如何在Android中实现`EditText`禁止输入法表情的功能,并提供相关代码示例。 首先,我们需要理解Android中的输入法(IME,Input Method Editor)是如何工作的。当用户在`EditText`中输入时,输入法会...

    Android QQ 表情

    - 项目可能使用了自定义的XML资源文件来存储表情图片,或者直接使用了Android系统的emoji字体来显示表情。 2. **UI设计与布局**: - 为了实现“仿微信、QQ聊天”的效果,开发者可能使用了RecyclerView或...

    Android Emoticons自定义表情

    在需要显示表情键盘的Activity或Fragment中,实例化`EmoticonsKeyboard`,并在适当的时候(如用户点击表情图标)显示它。同时,确保在输入框失去焦点或用户选择其他操作时隐藏表情键盘。 6. **处理表情输入**: ...

    Android 仿QQ表情(输入和显示)

    在Android开发中,实现类似QQ的表情输入和显示功能是一项常见的需求,特别是在聊天应用或者社交软件中。本项目通过源码的方式,为我们展示了如何在Android应用中实现这一特性。以下是关于这个话题的一些关键知识点:...

    Android 表情库源码

    - 集成到UI:将`EmojiconTextView`添加到聊天输入框,通过`EmojiPopup`在需要时显示表情面板。 **5. 源码分析** 通过阅读"emojicon"的源码,开发者可以学习到如何处理自定义View的绘制、触摸事件以及数据绑定等...

    安卓Emoji表情相关-Android实现表情输入.rar

    这个压缩包文件"安卓Emoji表情相关-Android实现表情输入.rar"可能包含了一个示例项目,帮助开发者了解和学习如何在Android应用中集成和使用Emoji表情。尽管描述中提到无法验证所有内容,但我们可以从这个主题中探讨...

    android 人物表情的实现

    在代码中,可以通过 Picasso、Glide 或者 Android 自带的 ImageLoader 等库来加载和显示表情。 ```xml android:id="@+id/emoji_image_view" android:layout_width="wrap_content" android:layout_height="wrap_...

    android仿qq聊天表情

    在Android开发中,模仿QQ聊天表情功能是一项常见的需求,它涉及到UI设计、动画处理以及数据序列化等多个技术点。下面将详细阐述这个话题中的关键知识点。 1. **UI设计**: - 表情面板布局:设计一个可以展示表情的...

    android添加表情(含 socket方式)

    表情面板通常是一个GridView或者RecyclerView,显示表情图片,点击后将对应的emoji代码插入到输入框。 3. **处理表情输入**:当用户点击表情时,需要将选中的表情代码(通常是Unicode编码)插入到输入框的光标位置...

    Android 表情开发

    - 设计一个表情面板布局,可以是GridView、RecyclerView或者其他适合展示多行多列的视图,用于显示表情图片。 - 在布局中,为每个表情设置点击事件,点击时获取对应的表情图片或Unicode值。 3. **点击menu键插入...

    android支持第三方输入法输入emoji表情etittext和textview都可以

    标题提到的“android支持第三方输入法输入emoji表情etittext和textview都可以”,这表明Android系统允许用户通过第三方输入法(如搜狗输入法)输入emoji,并且这些表情可以在EditText和TextView中正确地展示出来。...

    Android 表情功能的实现

    在Android应用开发中,实现类似QQ的表情功能是一项常见的需求,特别是在聊天、社交或者论坛类的应用中。QQ表情功能的成功在于其丰富的表情库和便捷的使用方式,为用户提供了一种直观且富有表现力的沟通手段。下面...

Global site tag (gtag.js) - Google Analytics