2009-05-28 28 views
6

Estoy trabajando con Android y realmente necesito una forma rápida de obtener un mapa de bits de un tamaño predeterminado para rellenarlo con un color predeterminado.Android - Rellene mapa de bits con color

Sin embargo, el siguiente código no funciona para mí;

entrada de mapa de bits es un mapa de bits mutable

int old = input.getPixel(0, 0); 
    Canvas c = new Canvas(input); 
    Rect rect = c.getClipBounds(); // The dimensions of the bitmap are returned 
    c.drawARGB(a, r, g, b); 
    int n = input.getPixel(0, 0); 
    if(old==n) 
     Log.e(TAG, "Values didn't change!"); 
    return input; 

estar seguro, el 'viejo' valor y el valor de (a | r | g | b) son diferentes pero habiendo 'dibujado' el color utilizando un lienzo con mi mapa de bits mutable debajo, el mapa de bits conserva su valor anterior.

Estaría encantado con cualquier método que tenga un mapa de bits y un valor de color y devuelva un mapa de bits con ese color.

Respuesta

6

¡No proporcioné suficiente información!

Mi valor alfa estaba fuera de rango;

int a = 0xFF<<24 

Así que cuando me llamaron

c.drawARGB(a,r,g,b); 

Fracasó en silencio y no cambió los valores.

+0

Esto pertenece como una edición de su publicación original. –

+0

Disculpas, fue mi primera publicación. ¿Cuál es la etiqueta para cerrar la pregunta si la he respondido yo mismo? – gav

+5

@Ben: Estás equivocado. Cuando resuelves una pregunta tú mismo, publicas la solución como una respuesta y la aceptas. @Gav: en StackOverflow generalmente solo haces una pregunta y dejas de hablar o de saludar al final, ya que esto es solo ruido – Casebash

Cuestiones relacionadas