## 自定义view在onDraw中绘制
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
TextPaint paint = new TextPaint();
paint.setColor(Color.RED);
paint.setTextSize(60);
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.P) {
for (int i = 0; i < 5; i++) {
canvas.translate(0, 100);
StaticLayout layout = new StaticLayout("查看企业仓库点击进入", paint, canvas.getWidth(),
Layout.Alignment.ALIGN_NORMAL, 1f, 0f, false);
layout.draw(canvas);
canvas.save();
}
}
}
StaticLayout 的构造方法
StaticLayout(CharSequence source, TextPaint paint, int width, Layout.Alignment align,
float spacingmult, float spacingadd, boolean includepad)
其中参数:
source:文本内容
width:文本区域的宽度,文本到达这个宽度后就会自动换行
align:文本的对齐方向
spacingmult:行间距的倍数,通常情况下填 1 就好
spacingadd:行间距的额外增加值,通常情况下填 0 就好
includeadd:是否在文本上下添加额外的空间,来避免某些过高的字符的绘制出现越界