android中畫文字的換行 辦法(對於遇到canvas.drawText(String s )無法實現換行問題的解決)


在使用canvas.drawText()繪制文字的時候,發現,如果需要繪制的文字較長,需要換行,通過在文字中加上“\n"或者”\r\n"都無法實現換行,如果非要使用canvas.drawText()方法來繪制,則必須自己手動的將文字給斷開,這樣很不方便,如果需要改變文字大小的時候,則還需要重新改寫斷開的方法,或者直接寫個可以根據文字大小進行自動斷開字符串的方法,但是,都是很繁瑣的辦法,其實,android中是有提供實現繪制字符串換行的方式的,如下:

TextPaint textPaint = new TextPaint();

 

 

 

 

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

textPaint.setTextSize(20.0F);

String aboutTheGame = "關於本游戲:本游戲是做測試用的,這些文字也是,都不是瞎寫的! ";

 

 

/**

* aboutTheGame :要 繪制 的 字符串   ,textPaint(TextPaint 類型)設置了字符串格式及屬性 的畫筆,240為設置 畫多寬后 換行,后面的參數是對齊方式...

*/

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

 

 

//從 (20,80)的位置開始繪制

can.translate(20,80);

 

layout.draw(can);


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM