2014-10-14 6 views
0

У меня проблема.Очистка изображения холста Android

@Override 
public void draw(Canvas canvas) { 
    super.draw(canvas); 
    canvas.drawBitmap(mBitmap, 0, 0, mBitmapPaint); 
    canvas.drawPath(mPath, mPaint); 
} 

Область моего холста локальна только для метода рисования, но записывается в mBitmap. Я знаю, как очистить холст внутри, но это было бы совершенно бессмысленно. Мой вопрос в том, как я могу сбросить canvas от события касания или любого события во время выполнения? Дайте мне знать, если вам нужно больше информации

Благодаря

редактировать: я собирался использовать частный переменный класс как doesScreenNeedClearing и есть слушатель установить, что, то в OnDraw есть это вопрос, но я не думайте, что такие вещи должны происходить в onDraw, но я не знаю, может быть, так люди это делают?

ответ

0

См. Метод canvas.drawColor(). Вы можете легко использовать Color.BLACK или Color.WHITE или любой цвет, который вы хотите.

+0

Эй, Уоррен. Спасибо за ответ. Я не уверен, что вы неправильно поняли мой вопрос, но это было не то, что я получал. Я хочу использовать методы, которые вы пишете, но выходит за рамки «draw». Как некоторые, как передать метод рисования новый холст, когда что-то происходит. Вы понимаете? – Ben

+0

Думаю, я все-таки нашел ответ, спасибо. Мне просто нужно было использовать как ((DrawingView) mView) .clearView(); – Ben

+0

Передача нового холста не будет работать. Вы не можете самостоятельно вызвать onDraw() с помощью нового холста. Это вызовет некоторые серьезные проблемы. Кроме того, что я сделал infact, не получил то, что вы пытались сказать, извините. Но я рад, что вы нашли решение. – WarrenFaith

Смежные вопросы