android - 无法在带有大文本 : "Font size too large to fit in cache" 的 Android TextView 中显示 Unicode 字符(表情符号)

标签 android unicode textview emoji large-text

我试图在 TextView 中显示单个 Unicode 字符(表情符号),文本大小较大:

mEmojiTextView = (TextView) findViewById(R.id.emoji_text_view);
mEmojiTextView.setTextSize(200);
mEmojiTextView.setText("\uD83D\uDE01");

字符没有出现在屏幕上,我在 logcat 中得到这个错误:

E/OpenGLRenderer﹕ Font size too large to fit in cache. width, height = 545, 513

有效的最大尺寸是

mEmojiTextView.setTextSize(150);

然后出现 Emoji 字符。它不像全屏或其他任何东西,在这种文本大小下,屏幕上有足够的空间容纳大约 6 个表情符号字符。

我正在 LG Nexus 5 手机上运行测试,分辨率为 1080 x 1920,运行 Android 5.1.1。我正在使用 minSdkVersion 11targetSdkVersion 23

我尝试了在 StackOverflow 和其他地方找到的许多解决方法:

mEmojiTextView.setLayerType(View.LAYER_TYPE_SOFTWARE, null);

<TextView android:layerType="software" ... />

<activity android:hardwareAccelerated="false" ... />

没有任何作用。

有什么方法可以让它发挥作用吗?

最佳答案

这是一个安卓问题 Issue with emoji with 200sp size 目前无法修复它,如果 TextView

中有表情符号,请不要将大小设置超过 199

关于android - 无法在带有大文本 : "Font size too large to fit in cache" 的 Android TextView 中显示 Unicode 字符(表情符号),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32298218/

相关文章:

android - 在 ActionbarSherlock 中更改 homeAsUpIndicator 图标在 ICS 中没有影响?

android - 如何在不使用 jquery 1.0.1.css 的情况下为 android 获取可折叠和可扩展列表

c# - 如何以正确的字体呈现 unicode 字符? (C#/窗体)

python - SQLAlchemy Unicode 难题

android - EditText 未在 XML 中使用其属性

android - 如何制作向上流动的textview

android - 根据设备屏幕大小设置 Textview 大小

Android aChartEngine 条形图

android - 即使未调用该方法,Mockito never() 也会被调用吗?

Java Unicode 字符转 UTF