需要一些帮助来理解android中的画图对象。我有一个名为myString的字符串对象。我在txt文件中加载了一些内容,我在资产下面有这些内容。在我的代码中,当我对其执行myString.length()时,我的vlue值为16708。
当我使用如下所示的画图对象来获得长度时,我得到的值为211050
myTextView = (TextView)findViewById(R.id.my_text_view);
Paint paint = myTextView.getPaint();
float length = paint.measureText(myString, 0, myString.length());我得到的长度值为211050。
现在我试着理解这些价值观是什么。16708显然是我字符串的总长度(以字符表示)。这里的211050是什么?它是以像素为单位的字符串宽度吗?
发布于 2013-01-11 14:22:41
是的,你的文本屏幕上的长度将以像素表示。
编辑:
是的,paint.breakText()有助于根据参数中提供的最大宽度来拆分字符串。
但是,还必须使用setSubpixelText (true)来解释包含i或l(小L)或w的字符串,因为断线文本无法使用breakText()确定中断字符串的确切长度。至少我遇到了这个问题,并且用setSubpixelText()解决了这个问题。
希望这能有所帮助。
https://stackoverflow.com/questions/14280046
复制相似问题