Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/233.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
android中对EditField的表情键盘支持_Android_Unicode_Android Softkeyboard_Emoji - Fatal编程技术网

android中对EditField的表情键盘支持

android中对EditField的表情键盘支持,android,unicode,android-softkeyboard,emoji,Android,Unicode,Android Softkeyboard,Emoji,我的应用程序在三星Galaxy S3上使用Android 4.0 我想在Android应用程序的EditText字段中集成表情符号字符支持。 谁能建议我,我怎样才能做到 例如,在whatsapp和微信应用程序中,TextField确实支持表情键盘字符,但在我的应用程序中,它为我使用表情键盘键入的每个字符显示? text_message = (EditText) findViewById(R.id.editText1); text_view = (textView) findViewByI

我的应用程序在三星Galaxy S3上使用Android 4.0

我想在Android应用程序的EditText字段中集成表情符号字符支持。 谁能建议我,我怎样才能做到

例如,在whatsapp和微信应用程序中,TextField确实支持表情键盘字符,但在我的应用程序中,它为我使用表情键盘键入的每个字符显示

text_message = (EditText) findViewById(R.id.editText1);
    text_view = (textView) findViewById(R.id.textView1);
    btntest = (Button) findViewById(R.id.button1);
    btntest.setOnClickListener(new OnClickListener()
    {
        public void onClick(View v)
        {

            text_swype.setText(text_message.getText().toString());
        }
    });

我也试着

和字体的表情符号从


但不起作用

您可以使用此库中的
emojiconeditView
EmojiconEditText

您必须使用库中的“EmojiconEditText”。 它将显示Eemojies

使用其中任何一个

EmojiconTextView: a TextView which can render emojis.
EmojiconEditText: a EditText which can render emojis.
EmojiconGridFragment: a fragment contains emojis in a GridView for the user to choose.
EmojiconsFragment: a fragment contains many set of emojis for the user to choose.

它取决于
TextView
或其子类(如
EditText
)所使用的字体

每个
视图
都可以显示表情符号,因为Unicode中包含数百个表情符号,而这些表情符号也成为大多数表情符号键盘和WhatsApp等应用程序使用的默认表情符号

然而,你不会像在WhatsApp中看到的那样看到这些彩色图像。这是因为WhatsApp为这些表情符号使用自定义字体/图像,以取代默认外观

但是,如果你在普通的“消息”应用程序或其他地方将表情符号添加到文本字段中,你应该会看到普通的Android风格,即显示Android机器人的单色表情符号

以下是常见表情符号及其Unicode代码点的列表:

它们都支持Android的普通字体。我猜您可能更改了版面中编辑文本的字体。


将内容发送到服务器时,您需要使用org.apache.commons.lang3.escapeJava(…),从服务器获取数据时,您需要将Unicode反转为表情符号,因此您必须使用org.apache.commons.lang3.unescapeJava(…)下面是org.apache.commons.lang3中的Util

@AZ_u发布的答案是正确的,但util名称已更新如下:

将字符串作为以下内容发送到服务器:

org.apache.commons.lang3.StringEscapeUtils.escapeJava(mEdText1.getText().toString()
从服务器读取字符串为:

org.apache.commons.lang3.StringEscapeUtils.unescapeJava(mData.get(position).getText())

您可以分享详细说明如何绘制文本的代码吗。@dinesh您还需要什么吗?您是通过重写onDraw方法进行自定义绘制还是使用EditText本身绘制文本。如果你正在重写onDraw,你能分享你的onDraw函数的代码吗?看看这个项目:嗨,我正在使用这个库,表情符号显示得很好,但是其他非表情符号被解码为日语字符…我该怎么办?ThxHi我在上面使用的所有库都非常有用,但在选择表情图标后,我需要将它们转换为unicode字符,并以JSON格式发送到服务器,当我从服务器收到它们时,相应地显示它们,我不确定如何使用unicode。请帮帮我。@Billyjoker您试图显示的文本是什么?@RajkumarMandera您只需获取
EmojiconTextView
EmojiconEditText
的文本并发送到服务器。它们应该已经是unicode的了。我想出来了,在POST上向服务器发送文本时,我并没有设置Charset-UTF-8。无论如何,谢谢你的回复