一、创建TextviewUtils工具类
public class TextviewUtils {
/**
* * 文本在indent 之后的字符对齐
* <p>
* * 此方法必须在view绘制完成后调用才生效
* <p>
* * getViewTreeObserver().addOnGlobalLayoutListener()
* <p>
* *
* <p>
* * @param tv TextView控件
* <p>
* * @param indent 标题,如 1. 或 一.
* <p>
* * @return 新的带换行的字符串
* <p>
*
*/
public static String autoSplitText(final TextView tv, final String indent) {
final String rawText = tv.getText().toString(); //原始文本
final Paint tvPaint = tv.getPaint(); //paint,包含字体等信息
final float tvWidth = tv.getWidth() - tv.getPaddingLeft() - tv.getPaddingRight(); //控件可用宽度
//将缩进处理成空格
String indentSpace = "";
float indentWidth = 0;
if (!TextUtils.isEmpty(indent)) {