【发布时间】:2013-07-16 22:21:35
【问题描述】:
我终于找到了根据 textview 的高度调整文本大小的代码。Source,但我不知道如何在这个函数中传递文本,我的文本是从另一个意图开始的
public int getHeightOfMultiLineText(String text,int textSize, int maxWidth) {
TextPaint paint = new TextPaint();
paint.setTextSize(textSize);
int index = 0;
int linecount = 0;
while(index < text.length()) {
index += paint.breakText(text,index,text.length(),true,maxWidth,null);
linecount++;
}
Rect bounds = new Rect();
paint.getTextBounds("Yy", 0, 2, bounds);
// obtain space between lines
double lineSpacing = Math.max(0,((linecount - 1) * bounds.height()*0.25));
return (int)Math.floor(lineSpacing + linecount * bounds.height());
}
【问题讨论】:
-
将文本保存为String并传递给getHeightofMultiLineText(ur_string_text,12,10);
-
你是不是出错了?
-
如何传递给 tv.setText(receivingdata);到这个功能??
-
嘿,在函数中实例化textview,然后设置文本不是吗?
标签: android