我想使用 Flutter 在文本小部件中显示表情符号。
\n\n当我从互联网复制示例表情符号时,其中一些在我的 IDE 中显示为 2 个字符。
\n\n例如:
\n\nstatic String dualCharEmoji = "\xe2\x9a\x94\xef\xb8\x8f";\nstatic String singleCharEmoji = "";\nRun Code Online (Sandbox Code Playgroud)\n\n当我在文本小部件中使用此变量时,它们都工作正常:
\n\nText("\xe2\x9a\x94\xef\xb8\x8f",)\nText("",)\nRun Code Online (Sandbox Code Playgroud)\n\n但是,仅在首次运行应用程序时,双字符表情符号仅显示为其第一个字符。
\n\n即仅当第一次打开应用程序时,剑图标显示为\xe2\x9a\x94而不是\xe2\x9a\x94\xef\xb8\x8f
重新加载后,它会得到修复,并且热重新加载/热重启不会再次导致错误。
\n\n我的问题是:
\n\n这是一个错误吗?我在这里遗漏了一些细节吗?为什么只有第一次打开应用程序时才会出现这种情况?
\n\n如何从一开始就显示 2 尺寸的表情符号?
\n\n我正在使用以下 Flutter 版本:
\n\n>flutter --version\nFlutter 1.9.1+hotfix.4 \xe2\x80\xa2 channel stable \xe2\x80\xa2 https://github.com/flutter/flutter.git\nFramework \xe2\x80\xa2 revision cc949a8e8b (9 weeks ago) \xe2\x80\xa2 2019-09-27 15:04:59 -0700\nEngine \xe2\x80\xa2 revision b863200c37\nTools \xe2\x80\xa2 Dart 2.5.0\nRun Code Online (Sandbox Code Playgroud)\n\n请参阅下面的最小可重现示例:
\n\nimport \'package:flutter/material.dart\';\n\nvoid main() => …Run Code Online (Sandbox Code Playgroud)