我要寻找一个在Android的方法,将采取一个输入(文本,text_font_size,DEVICE_WIDTH),并根据这些计算将返回多少高度将需要显示特定的文字?
我设置基于他的内容文本视图/ web视图高度运行时,我知道关于经的内容,但我不能在我的情况下使用,因为一些Web视图最小高度的问题。
所以,我想计算的高度,并基于该我设置视图的高度。
我曾尝试用以下方式
Paint paint = new Paint();
paint.setTextSize(text.length());
Rect bounds = new Rect();
paint.getTextBounds(text, 0, 1, bounds);
mTextViewHeight= bounds.height();
所以输出
1)的“Hello World”返回13的高度为字体15
2)“果冻豆的最新版本是在这里,与性能优化”返回高度16字体15
然后我试图与
Paint paint = new Paint();
paint.setTextSize(15);
paint.setTypeface(Typeface.SANS_SERIF);
paint.setColor(Color.BLACK);
Rect bounds = new Rect();
paint.getTextBounds(text, 0, text.length(), result);
Paint.FontMetrics metrics = brush.getFontMetrics();
int totalHeight = (int) (metrics.descent - metrics.ascent + metrics.leading);
所以输出
1)的“Hello World”返回17的高度为字体15
2)“果冻豆的最新版本是在这里,与性能的优化”返回17的高度为字体15
如果我设置这些值,以我的看法则其切割一些文本,它没有显示的所有内容。
再次,它看起来对一些表作为它具有大的宽度,但不是电话OK。
有没有什么方法来计算基于内容的高度?