SweepGradient and Banding

by Shane » Fri, 26 Feb 2010 01:52:40 GMT

Sponsored Links

I'm writing an android app to that among other things lets a user
choose a color using a color wheel that is drawn using a SweepGradient
shader.  The shader is set up as follows:

        mColors = new int[] { Color.RED, Color.MAGENTA, Color.BLUE,
Color.CYAN, Color.GREEN,  Color.YELLOW, Color.RED };
        Shader s = new SweepGradient(0, 0, mColors, null);

I assign that shader to a Paint object which I then use inside of a
onDraw callback in a custom view to an oval using the paint/shader
object.  Here's the problem...

If I use that view inside of a Dialog and display the Dialog the oval
displays great, all colors in the gradient seamlessly blend together.
However, if I use that same view on its own the same SweepGradient
looks banded especially between green->red, magenta->blue, blue-
changing dither makes no difference.  I'm at a loss as to what to try,
I'm hoping someone has some clues on this.

Oh and BTW, this same behavior happens in the emulator or running on
my Motorola Droid.



SweepGradient and Banding

by Gaunt Face » Sat, 27 Feb 2010 05:37:31 GMT

 Heya Shane,

I've had a similar problem with gradients applied to backgrounds, what
I found the issue was, was I had didn't have the drawables in the
correct dpi folder.

While I know your not using a drawable it might be worth looking into
whether changing the AndroidManifest file to state your app handles
different screen sizes.

I don't know if this is the problem, especially considering the dialog
view working, but it might be worth a try:

// Add just underneath the Manifest tag

          android:anyDensity="true" />


Sponsored Links

Other Threads

1. Android AMF client library : Android RTMP client library

Sounds great! I have used BlazeDS extensively in many Flex apps as
well. AMF is so much faster and cleaner than XML or JSON. Are we going
to have serialization and de-serialization of native objects as we do
in AMF?
Also if we get RTMP do we get push and streaming too?



Is there a reason why FANCY_REFERENCE_SUBCLASS doesn't seem to be
defined by default?    Is there anyway from the java level to check
and see if it was defined by the system you are running on?    A few
of my programs seem to leak if enqueue isn't called properly.

Keith Preston


3. Image viewer widget with zooming capability

4. Bitmap Mutability Inconsistency

5. Working on a Mobile or Embedded Device/System? Tell VDC about your experiences for a chance to WIN!

6. Working on a Mobile or Embedded Device/System? Tell VDC about your experiences for a chance to WIN!

7. Handler: UI gets updated all at once at the end