Я пытаюсь выяснить лучший способ получить значение цвета пикселя в заданной точке на View . Есть три способа, которыми я пишу в View:
Я устанавливаю фоновое изображение с помощью View.setBackgroundDrawable (...) .
Я пишу текст, рисую линии и т. д. с Canvas.drawText (...) , Canvas.drawLine (...) и т. д. на Canvas с растровым изображением .
Я рисую дочерние объекты (спрайты), заставляя их записывать в Canvas, передаваемый методу View onDraw (Canvas canvas) .
Вот метод onDraw () из моего класса, который extends View:
@Override
public void onDraw(Canvas canvas) {
// 1. Redraw the background image.
super.onDraw(canvas);
// 2. Redraw any text, lines, etc.
canvas.drawBitmap(bitmap, 0, 0, null);
// 3. Redraw the sprites.
for (Sprite sprite : sprites) {
sprite.onDraw(canvas);
}
}
Как лучше всего получить значение цвета пикселя, учитывающее все эти источники?