我正在尝试使用paint来动态更改文本的大小。我注意到当我有一个表情符号并允许它填充一个视图时,opengl会抛出错误Font size to large to fit in cache.
在其他问题中,人们建议增加文本的路径来渲染它或尝试关闭硬件加速。这些似乎无法解决问题。
我真的只需要知道我怎么知道我可以显示的最大尺寸是什么,而尺寸不会太大而不能显示。
更新 我尝试使用文本绘制来查看文本是否有足够的空间在视图中呈现。所以我知道我有适当的视图大小,但我仍然看到这个问题。
2015年4月15日更新: 我忘了更新我的问题,但我为Android创建了issue,但它已被接受为问题。有人建议使用
setLayerType(View.LAYER_TYPE_SOFTWARE, null)
但是因为没有回调或从渲染器中获取失败的方法,您必须始终使用View.LAYER_TYPE_SOFTWARE
作为您的观看而不是HARDWARE
。
答案 0 :(得分:0)
"setLayerType(View.LAYER_TYPE_SOFTWARE, null)"
可以很好地工作,但是如果关闭硬件加速,则在旋转画布时表情符号不能正常工作。希望它有所帮助。