を使用してテキストを描画する必要があります
canvas.drawText("1",x,y, ペイント);
しかし、問題は、「テキストの中心」が私が与えた位置と一致しないことです.後者を行う方法はありますか.助けてください。
前もって感謝します
ペイント インスタンスに配置を設定する必要があります。
paint.setTextAlign(Paint.Align.CENTER);
描く前。
編集: 垂直方向の中央にも配置したいというあなたの指示に従って、私はこれに似たアプローチをとります:
paint.setColor(Color.WHITE);
paint.setTextAlign(Align.LEFT);
String text = "Hello";
Rect bounds = new Rect();
float x = 100, y = 100;
paint.getTextBounds(text, 0, text.length(), bounds); // Measure the text
canvas.drawLine(0, y, canvas.getWidth(), y, paint); // Included to show vertical alignment
canvas.drawLine(x, 0, x, canvas.getHeight(), paint); // Included to show horizsontal alignment
canvas.drawText(text, x - bounds.width() * 0.5f, y + bounds.height() * 0.5f, paint); // Draw the text
または、ペイントの中央揃えを使用します。
paint.setColor(Color.WHITE);
paint.setTextAlign(Align.CENTER);
String text = "Hello";
Rect bounds = new Rect();
float x = 100, y = 100;
paint.getTextBounds(text, 0, text.length(), bounds); // Measure the text
canvas.drawLine(0, y, canvas.getWidth(), y, paint); // Included to show vertical alignment
canvas.drawLine(x, 0, x, canvas.getHeight(), paint); // Included to show horizsontal alignment
canvas.drawText(text, x, y + bounds.height() * 0.5f, paint); // Draw the text