Почему мой вызов Canvas.drawText () просто не работает

Привет всем: Я пишу класс, который наследует от TextView, и переопределяет его onDraw() , но в методе мой canvas.drawText() не работает, код, как canvas.drawText() ниже:

 protected void onDraw(Canvas canvas) { // super.onDraw(canvas); Paint paint = new Paint(); paint.setColor(android.graphics.Color.WHITE); paint.setTextSize(20); String text = "hello"; canvas.drawText(text, 0, 0, paint); } 

Solutions Collecting From Web of "Почему мой вызов Canvas.drawText () просто не работает"

Он ничего не рисует, потому что текстовые координаты внизу слева. Поскольку вы пытаетесь нарисовать на 0,0, он будет рисовать над экраном.

Попробуйте изменить последнюю строку:

 canvas.drawText(text, 0, 20, paint); 

Отличные предложения со всех сторон, отличные ребята. В следующий раз, хотя было бы неплохо, если бы вы спросили парня в комментарии или что-то, независимо от того, попробовал он это полностью, прежде чем публиковать его в качестве ответа. Вы действительно думаете, что, когда он дошел до того, что не работал, он просто пришел прямо к Stack Overflow, не экспериментируя?

У меня есть альтернативное предложение, которое, сумасшедшим, основано на целом вопросе, а не на той части, на которую можно было бы ответить без значительных знаний.

Я бы порекомендовал попробовать ваш призыв drawText на Canvas, который не находится в подклассе TextView, так как он не будет переопределен несколькими сотнями строк кода в TextView, которые управляют его доступным состоянием.