计算文本需要多少空间

时间:2013-07-16 18:59:07

标签: android textview android-viewpager bounds

我需要制作包含图片和文字的“页面”(最有可能使用ViewPager)。

例如,首先会有图像,在图像下载时会获得图像尺寸。在布局上的图像将是X空间,我可以显示Y长度文本。然后,对于下一页,我将其余文本拆分为要显示的新字符串。 TextSize的格式为dp

我想知道平均字母占用多少像素,然后计算出我可以在一个页面中显示多少行。

进行这些计算的最佳方法是什么?

对于首发,我做了字母计算

 final float densityMult = ctx.getResources().getDisplayMetrics().density;
    final float scaledPx = 20 * densityMult; //i guess its same as 20dp
    paint.setTextSize(scaledPx);
    final float size = paint.measureText("a");

在480x800 3.7“屏幕上,它返回值16.0和540x960 4.0”17.0 这些值是像素吗?

1 个答案:

答案 0 :(得分:1)

我真的不明白为什么要测量你的文字,但就像你有:

paint.measureText("a");

你可以测量任何字符串,而不仅仅是字符。如果您想手动分割文本(我不建议这样做),您可以检查文本的度量是否高于可用宽度。

是的,measureText会在px

中返回该指标