我正在玩Android游戏,我正在使用这样的功能在设备屏幕上显示文字:
public void drawString(String text, int x, int y, Paint paint) {
canvas.drawText(text, x, y, paint);
}
我尝试显示以下消息:
g.drawString("Player: " + playerString+ " :\n" + messageString,SCREENWIDTH / 2, SCREENHEIGHT / 2, paint);
然而,取代换行符(\ n),我得到一个奇怪的角色(正方形)。
任何人都可以帮助我?
谢谢
答案 0 :(得分:3)
而不是drawString
来电drawText
对于断行,使用Y offset调用drawText两次。
答案 1 :(得分:0)
public void drawString(String text, int x, int y, TextPaint paint)
{
if (text.contains("\n"))
{
String[] texts = text.split("\n");
for (String txt : texts)
{
canvas.drawText(txt, x, y, paint);
y += paint.getTextSize();
}
}
else
{
canvas.drawText(text, x, y, paint);
}
}