代码之家  ›  专栏  ›  技术社区  ›  Gohan

如何通过unicode字符获取系统Android表情符号?

  •  2
  • Gohan  · 技术社区  · 11 年前

    我想实现一个只使用表情符号unicode数组的android表情符号键盘,而不需要任何额外的res。

    因此,对于表情符号unicode字符,我需要从android系统中获取可绘制的内容,如果系统不支持该字符,我就忽略该字符。

    经过一些基础研究,

    • 表情符号, https://github.com/rockerhieu/emojicon
    • 表情符号, https://github.com/ankushsachdeva/emojicon

    这些工具都使用自制资源。

    使用文本视图 setText , tv.setText("\u263A"); TextView可以显示资源,但如何获取资源?

    1 回复  |  直到 11 年前
        1
  •  3
  •   Gabe Sechan    11 年前

    问题是,系统无法确定可以显示哪些字符。字体确实如此。字体需要定义如何绘制将显示的每个字符。这就是为什么你会看到盒子或?对于缺少的字符-这是字体的默认呈现。Android上没有测试字符是否以给定字体显示的方法(尽管这确实很好)。由于无法知道EditText使用的字体,因此无法知道是否支持给定的字符。您最好的选择是将自己限制在默认Android系统字体中定义的字符。但即使这样,你也假设OEM没有使用不同的默认字体,用户没有覆盖它,应用也没有覆盖它。基本上,你只能猜测和希望。