【问题标题】:How to set emoji by using unicode in EmojiAppCompatTextView如何在 EmojiAppCompatTextView 中使用 unicode 设置表情符号
【发布时间】:2020-02-29 21:24:48
【问题描述】:

我需要使用表情符号显示国旗,我正在使用以下网站获取国旗 unicode。

https://apps.timwhitlock.info/emoji/tables/iso3166

我正在使用androidx.emoji.widget.EmojiAppCompatTextView 来显示标志。

但是当我使用unicode 时,它不会打印标志。

emojiCountryFlag.setText("US") //Print UN

emojiCountryFlag.setText("U+1F1FA U+1F1F8") //在输出中打印相同

但如果我使用emojiCountryFlag.setText("\uD83C\uDDFA\uD83C\uDDEC"),它会打印出完美的标志。

我无法理解如何使用 unicode 打印标志,或者有什么地方可以得到这种类型的字符串 "\uD83C\uDDFA\uD83C\uDDEC".

当我在引号中打印ISOvalue 时,Android Studio 会生成此代码。

【问题讨论】:

    标签: android android-layout unicode


    【解决方案1】:

    您可以在与您查看的页面相同的页面上找到它。 U+1F1FA U+1F1F8 是用于标识标志的 unicode 符号。 \uD83C\uDDFA\uD83C\uDDEC 是您需要与 JavaAndroid 一起使用的代理项。

            Code    UTF‑8                           Surrogates
    ?  ?  1F1FA   F0 9F 87 BA     3C D8 FA DD     D83C DDFA   REGIONAL INDICATOR SYMBOL LETTER U
    ?  ?  1F1F8   F0 9F 87 B8     3C D8 F8 DD     D83C DDF8   REGIONAL INDICATOR SYMBOL LETTER S
    

    为了简化您的任务,您可以在 Android Studio 中粘贴 unicode 标志。

    https://apps.timwhitlock.info/unicode/inspect/hex/1F1FA/1F1F8

    【讨论】:

    • 嘿@tynn,感谢您的回答,是的,当我将它们粘贴到 android studio 时,我能够生成这些代码,但我将从服务器获取这些表情符号,我需要告诉他们什么他们需要发送给我以生成这些表情符号的代码类型。
    • 最简单的可能是将字符串作为 UTF-8 发送。
    猜你喜欢
    • 2014-09-28
    • 2015-01-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-06
    • 2014-08-26
    • 2018-12-14
    相关资源
    最近更新 更多