如何在Snackbar、Toast或TextView中显示表情符号/Emoji

11

我想在 Snackbar/Toast 通知中添加表情符号/emoji。这些表情符号需要是图像资源还是 Unicode 字符?当我从以下网站(Unicode Character Website)使用 Unicode 字符时,我得到的是字符串输出。

Snackbar.make(findViewById(android.R.id.content), \U+1F601 + "Done", Snackbar.LENGTH_LONG).show();  
1个回答

27

在对支持的Unicode序列以及Visual Unicode数据库进行交叉参考后,我意识到\u1F601是一个32位Unicode表示,而16位表示可以设置为:

Toast.makeText(this, "Smileys = " + ("\ud83d\ude01"),Toast.LENGTH_LONG).show();

改变("\ud83d\ude01")的 Unicode 编码的最后一位即可更改笑脸表情。

请参考以下链接:

http://apps.timwhitlock.info/emoji/tables/unicode#note1

http://www.charbase.com/1F601


谢谢您的回复。通过进一步挖掘您的答案,我能够获取更多表情符号的Unicode编码。 - Savan Akbari
我们在早期的设备上遇到了这个问题。有人知道这只适用于Marshmallow和Nougat吗? - Barry Irvine
1
它在早期的设备上也能正常工作,我已经在KitKat上进行了测试。 - Savan Akbari

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接