我当前的项目使用了许多字体中不存在的符号。到目前为止,我已经发现一些iOS渲染作为一个盒子,所以我迟早要找到一个Android也无法渲染的东西,尽管到目前为止它在iOS上的表现要好于iOS这方面。
有没有办法以编程方式检查给定的Unicode代码点是否会在屏幕上正确显示而不是空方框等?
如果我能够检测到无法呈现的符号,我可以为它实现一种解决方法,而不是显示一个丑陋的盒子。
答案 0 :(得分:2)
使用Emoji Compat,所有当前的Unicode字符都支持回API 19.它可以与Downloadable Fonts一起使用,确保随着其他Unicode字符的标准化,您的应用会自动支持它们。
您可以使用hasEmojiGlyph()确认Emoji Compat是否支持特定字符:
EmojiCompat.get().hasEmojiGlyph(charSequence);
注意:在调用此文件之前,您必须拥有initialized Emoji Compat。
EmojiCompat DevByte video显示了一系列最简单的步骤。
答案 1 :(得分:2)
对于一般的unicode字符,您可以使用PaintCompat.hasGlyph。
您仍然应该使用ianhanniballake的答案中提到的EmojiCompat才能正确呈现表情符号。