4
所以,我有這個問題,我的android文本繪製在背景圖像頂部的畫布上沒有顯示。我的代碼:Android canvas.drawText()沒有顯示
@Override
public void draw(Canvas canvas) {
final float scaleFactorX = getWidth()/WIDTH;
final float scaleFactorY = getHeight()/HEIGHT;
if(canvas != null) {
final int savedState = canvas.save();
canvas.scale(scaleFactorX, scaleFactorY);
Paint textPaint = new Paint();
textPaint.setColor(Color.RED);
textPaint.setTextSize(20);
textPaint.setAntiAlias(true);
canvas.drawBitmap(background, 0, 0, null);
canvas.drawBitmap(button_start, (canvas.getWidth() - button_start.getScaledWidth(canvas))/2, canvas.getHeight()/4, null);
canvas.drawText("Test text", 0, 0, textPaint);
canvas.restoreToCount(savedState);
}
}
有沒有人有一個想法我做錯了什麼?
作爲附帶說明,避免的onDraw創建實例()。 Paint對象可以重用,你只是在這裏浪費大量的內存。 –
'canvas.restoreToCount(savedState);'的目的是什麼? – cygery
@cygery我認爲沒有它,屏幕會不斷縮放,從而不斷放大。經過測試,似乎並非如此。感謝您的關注。 –