我确信这与需要转义字符或某事有关 - 但我无法弄明白。当我尝试在我的画布上绘制+5时,+符号永远不会出现 - 我不会看到5。
任何人都知道如何在画布上绘制这样的特殊字符吗?
谢谢!
这是我编译但不显示“+”的代码:
private void doDraw(Canvas canvas) {
//other misc canvas.draw(...) calls
canvas.drawText("+5", xPos, yPos, bonusScorePaint);
}
显然
canvas.drawText("\+5", xPos, yPos, bonusScorePaint);
不是有效的转义序列,因此无法编译。
答案 0 :(得分:1)
你回答了自己的问题。是的,你需要在“+”前加一个“\”。
答案 1 :(得分:1)
原来这是我的TypeFace。不知道为什么,我使用的是自定义字体,但此字体中存在+号。
答案 2 :(得分: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);
我唯一的想法是它可能是你的绘画对象的颜色或对象的位置。
答案 3 :(得分:0)
如Konrad Rudolph所述,请尝试\\+