Android固定宽度文字自适应大小
参考自:
/qq_29443203/article/details/78960691?utm_medium=distribute.pc_relevant.none-task-blog-title-1&spm=1001.2101.3001.4242
//固定宽度的情况下,自适应文本字体大小 public static float adjustTvTextSize(TextView tv, int maxWidth, String text) { int avaiWidth = maxWidth - tv.getPaddingLeft() - tv.getPaddingRight() - 10; if (avaiWidth <= 0 || StringUtils.isEmpty(text)) { return tv.getPaint().getTextSize(); } TextPaint textPaintClone = new TextPaint(tv.getPaint()); // note that Paint text size works in px not sp float trySize = textPaintClone.getTextSize(); while (textPaintClone.measureText(text) > avaiWidth) { trySize--; textPaintClone.setTextSize(trySize); } tv.setTextSize(PLEX_UNIT_PX, trySize); return trySize; }