【转】android中画文字的换行 办法…

来源:互联网 发布:古代服装图案知乎 编辑:程序博客网 时间:2024/05/17 22:36


在使用canvas.drawText()绘制文字的时候,发现,如果需要绘制的文字较长,需要换行,通过在文字中加上“\n"或者”\r\n"都无法实现换行,如果非要使用canvas.drawText()方法来绘制,则必须自己手动的将文字给断开,这样很不方便,如果需要改变文字大小的时候,则还需要重新改写断开的方法,或者直接写个可以根据文字大小进行自动断开字符串的方法,但是,都是很繁琐的办法,其实,android中是有提供实现绘制字符串换行的方式的,如下:

TextPaint textPaint = new TextPaint();

textPaint.setARGB(0xFF, 0xFF, 0, 0);

textPaint.setTextSize(20.0F);

String aboutTheGame = "关于本游戏:本游戏是做测试用的,这些文字也是,都不是瞎写的! ";

StaticLayout layout = newStaticLayout(aboutTheGame,textPaint,240,Alignment.ALIGN_NORMAL,1.0F,0.0F,true);

//从 (20,80)的位置开始绘制

can.translate(20,80);

layout.draw(can);