在Android中存储和呈现Unicode表情的最佳方法

在Android中存储和呈现Unicode表情的最佳方法,android,unicode,emoji,Android,Unicode,Emoji,我有一个简单的记忆游戏作为项目。对于内存块,我想使用表情符号。我试着这样使用它: emojiCard.setText(new String(Character.toChars(Integer.parseInt(1F60D, 16)))); 现在我只需要将1F60D保存到一个变量中,就可以显示表情符号了 这适用于简单的表情符号,但我不能使用新的表情符号,因为我必须使用代理对,我不知道如何做到这一点 有更好的办法吗?比如保存unicode 对不起,我对安卓开发还很陌生,已经尝试了很多东西。 谢谢。

我有一个简单的记忆游戏作为项目。对于内存块,我想使用表情符号。我试着这样使用它:

emojiCard.setText(new String(Character.toChars(Integer.parseInt(1F60D, 16))));
现在我只需要将1F60D保存到一个变量中,就可以显示表情符号了

这适用于简单的表情符号,但我不能使用新的表情符号,因为我必须使用代理对,我不知道如何做到这一点

有更好的办法吗?比如保存unicode

对不起,我对安卓开发还很陌生,已经尝试了很多东西。 谢谢。

Integer.parseInt接受一个字符串作为输入,所以您可能想说Integer.parseInt1F60D,16。如果只需将数字0x1F60D文本传递给Character.toChars,这将浪费开销

Java字符串使用UTF-16编码。编码为UTF-16时,代码点U+1F60D使用代理项对,因此代理项不是您的问题

假设您指的是较新的表情符号如何支持修改器来更改其性别、颜色等,那么这与代理无关。您只需将所需的修改器代码点附加到基本表情符号代码点之后。例如:

emojiCard.setText(new String(Character.toChars(0x1F466)) + new String(Character.toChars(0x1F3FE)));