У меня есть пользовательский класс вида, который расширяет представление. Я использую over-ridden метод onDraw для рисования на холсте. У меня есть список с POJO, которая включает в себя путь и краски, с помощью которой я могу воссоздать старые пути нарисовано, что-то вроде этого:Эффект ластик с использованием холста
@Override
protected void onDraw(Canvas canvas){
for (POJO pojo : pojoList {
canvas.drawPath(pojo.path, pojo.paint);
}
canvas.drawPath(path, paint);
}
Я хочу, чтобы реализовать функцию стирания, которая должна работать, как надлежащее стереть. Я знаю один способ сделать это, чтобы записать в растровое изображение и использовать setXfermode для CLEAR, который правильно работает. Но пикселизация не выглядит хорошо на устройствах с меньшим разрешением. Я не хочу использовать цветную краску WHITE, поскольку под этим представлением у меня есть ImageView, поэтому его окраска в белый цвет также повлияет на ImageView. Любая идея или фрагмент решения этой проблемы высоко оценена.