Создание границ для каждого изображения, например, с помощью Rect, установленного для шнуров каждого изображения (положение и размер).В представлении, в котором вы переопределяете onDraw (), установите onTouchListener для самого представления.
В onTouch () проверьте, что event.getX () / getY () находится в пределах белого изображения.Затем используйте whiteImage.setPixel (), чтобы установить отдельные пиксели растрового изображения.В качестве альтернативы используйте Canvas.drawPoint () вместо того, чтобы манипулировать самим белым растровым изображением.
Что касается не отображения красного прямоугольника ... просто не рисуйте его?
Редактировать: В свой комментарийо не квадратной / прямоугольной формы.Я все еще проверял бы событие касания в прямоугольнике и затем передавал бы это к изображению, если оно достигло формы.
Внутри фигуры (я предполагаю, что это растровое изображение) вы должны сделать Bitmap.getPixel (x, y) и посмотреть, если это == для Color.White, если это так ... измените его налюбой цвет!