我正在寻找在 Android 中接受输入(文本、text_font_size、device_width)的方法,并根据这些计算返回显示特定文本所需的高度?
我正在根据他的内容设置文本视图/网络视图高度运行时,我知道扭曲内容,但由于一些网络视图最小高度问题,我无法在我的情况下使用。
所以我正在尝试计算高度并基于此设置视图高度。
我尝试过以下方法
Paint paint = new Paint();
paint.setTextSize(text.length());
Rect bounds = new Rect();
paint.getTextBounds(text, 0, 1, bounds);
mTextViewHeight= bounds.height();
所以输出是
1) "Hello World" 为字体 15 返回高度 13
2)“最新版本的果冻豆在这里,性能优化”为字体 15 返回高度 16
然后我试过了
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" 为字体 15 返回高度 17
2)“最新版本的果冻豆在这里,性能优化”为字体 15 返回高度 17
如果我将这些值设置为我的视图,那么它会剪切一些文本,它不会显示所有内容。
同样,它在某些桌子上看起来还不错,因为它的宽度很大,但在电话上却不行。
有没有办法根据内容计算高度?