Hi there,
I draw a grid on a surface, and each cell of the grid is filled with a
gradient, so what I do is to create a LinearGradient for each cell, then
set as a shader for a Paint, and finally create a Rect using that Paint.
Something in the way of:
Paint cellPaint = new Paint();
...
for (i=0; i<cell.length; i++) {
LinearGradient gradient = new LinearGradient(cell[i].left,
cell[i].top, 80, 80, Color.BLACK, Color.WHITE, Shader.TileMode.CLAMP);
cellPaint.setShader(cellGradient);
canvas.drawRect(cell[i].left, cell[i].top, cell[i].left+79,
cell[i].top+79, cellPaint);
}
The problem is that I need to create a lot of LinearGradient objects,
one for each cell, even when they use the same colors, size, etc. and
just changes the coordinates because each one is drawn on a different place.
But LinearGradient constructor seems to use "absolute" coordinates, I
mean relatives to the whole screen, so a LinearGradient created on x and
y coordinates, cannot be reused on x2 and y2 (where x2 and y2 are
different from x and y, of course).
Does someone knows a more or less straight forward manner to solve this
problem creating just one LinearGradient and then "moving" it to
different places as needed?
Best regards,
--
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to android-developers@googlegroups.com
To unsubscribe from this group, send email to
android-developers+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en