在android中处理表情符号

时间:2014-10-03 11:23:58

标签: android textview emoji android-keypad

最近完成了一个应用程序并且被告知当用户在他们的评论中添加表情时,他们第一次出现并消失。

我使用comment.setText(Html.fromHtml(text));

显示了评论

我从未真正考虑过表情符号,这是我第一次尝试使用应用程序来处理它们。在textview中显示表情符号的默认行为是什么。我已经检查了我的默认键盘,没有表情符号,因此用户可能正在使用自定义键盘。什么是停止处理来自自定义键盘输入或通常在应用程序内处理表情符号的最佳方法。

1 个答案:

答案 0 :(得分:0)

Android Span允许您根据需要格式化代码。您可以使用ImageSpan呈现输入文本": - )"通过TextView中的任何位图:

String text = "here is a smiley :-)";
String smileyStr = ":-)";
SpannableString ss = new SpannableString("Here's a smiley :-)");
int smileyStart = text.indexOf(smileyStr);
Bitmap smiley = BitmapFactory.decodeResource(getResources(), R.drawable.emoticon);
ss.setSpan(new ImageSpan(smiley), text.indexOf(smileyStr), smileyStr.length(), Spannable.SPAN_INCLUSIVE_INCLUSIVE); 
textView.setText(ss);

您可以在此处找到更多信息: http://blog.stylingandroid.com/introduction-to-spans/