0

我确信这与需要转义字符或其他东西有关 - 但我无法弄清楚。当我尝试在画布上绘制 +5 时,+ 符号永远不会出现 - 我没有看到 5。

有人知道在画布上绘制这样的特殊字符的方法吗?

谢谢!

这是我编译但不显示“+”的代码:

    private void doDraw(Canvas canvas) {
       //other misc canvas.draw(...) calls

       canvas.drawText("+5", xPos, yPos, bonusScorePaint);
}

显然

canvas.drawText("\+5", xPos, yPos, bonusScorePaint);

不是有效的转义序列,因此无法编译。

4

4 回答 4

1

原来是我的字体。不知道为什么,我使用的是自定义字体,但该字体中存在 + 号。

于 2011-01-21T16:00:32.610 回答
1

你是在自问自答。是的,您需要在“+”前面加一个“\”。

于 2011-01-21T13:24:47.807 回答
0

这是我拥有的代码:

ImageView img = (ImageView)findViewById(R.id.img);
Bitmap bmp = Bitmap.createBitmap(400, 400, Bitmap.Config.ARGB_8888);
Canvas c = new Canvas(bmp);
Paint p = new Paint();
p.setColor(Color.WHITE);
c.drawText("+5", 20, 20, p);
img.setImageBitmap(bmp);

我唯一的想法是它可能是您的绘画对象的颜色或对象的位置。

于 2011-01-21T15:02:31.443 回答
0

正如康拉德鲁道夫所说,尝试\\+

于 2011-01-21T16:10:38.127 回答