在圆圈下方绘制文本
问题描述:
我想在画布中的圆圈下方绘制文本。以下是我的代码,但文字绘制在圆上方。在圆圈下方绘制文本
canvas.drawCircle(getWidth()/2, getHeight()/2, radius, paint);
canvas.drawText(text, 0, (radius*2), textPaint);
答
看着它,你还是基于画布,你做圆圈一样的高度来设定y值,然后调整它的基础上半径在下面。
canvas.drawCircle(getWidth()/2, getHeight()/2, radius, paint);
canvas.drawText(text, 0, (getHeight()/2) + radius, textPaint);
有一件事可能会让你感到困惑的是,它的起源是左上角。并且Y的增加量是向下的
您可能需要根据文本高度添加一些额外的像素。所以
+0
请参阅关于屏幕/画布坐标的相关内容。 http://stackoverflow.com/questions/11483345/how-do-android-screen-coordinates-work – Doomsknight
尝试否定的高度值' - (半径* 2)' – Doomsknight
看到'帆布#drawText'文档 – pskink
@Doomsknight负不工作 – Dhrupal