如何显示 5 位 Unicode 字符,如扬声器 /u1f50a

2022-09-03 01:40:55

扬声器图标unicode 1f50a是“杂项符号和象形文字”系列中的5位数字,当我尝试显示它时,我得到“a”,所以显然我得到的是1f50(不存在所以空白),后跟“a”。我可以显示任何4位数字的unicode字符,但找不到如何显示较长的字符。我知道平板电脑可以显示它,因为我可以在Unicode Map应用程序中看到它。

        textSound = (TextView)findViewById(R.id.textSound);
    textSound.setText("\u1f50a");

答案 1

这些字符不能直接在 Java 字符串中表示,因为它每个字符仅使用 16 位。但是有一种称为“代理对”的逃逸机制。例如,字符号1f50a可以用两个16位“字符”D83D和DD0A表示。因此,像“\uD83D\uDD0A”这样的东西可能会起作用(我没有尝试过)。它仍然取决于此字符在使用的字体中是否可用。

这个网站可以帮助转换。


答案 2

推荐