2009-10-09 9 views
6

Estoy tratando de crear un selector de color para Android que se parece a una versión minimalista de Gimp. Por lo tanto, tiene un control deslizante de tono y un rectángulo con variantes de saturación/valor de un color elegido en el control deslizante de tono.selector de color de Android - actualización de matriz de colores

Pregunta: ¿Cuál es la mejor manera de crear el rectángulo?

En este momento, estoy creando una matriz de píxeles de 200 x 200, pero lleva ~ 5 segundos crear y mostrar un rectángulo con esa matriz. Y necesito colores en el rectángulo para cambiar cada vez que cambio el valor en el control deslizante de tono ...

Rectángulo es mapa de bits, por cierto. ¿Puedo usar matrices de color en eso y cómo? ¿Algún ejemplo?

¡Gracias de antemano!

+0

No conozco las matrices de colores, pero ¿realmente tiene que calcular el mapa de bits completamente nuevo cuando algo cambia? ¿Tal vez hay una forma rápida de calcular algún tipo de delta? ¿Te importaría publicar el código? Aunque no puedo ayudarlo, realmente me gustaría ver cómo se calculan los colores en el rect. – svens

+0

¡Las matrices de color son definitivamente el camino a seguir! Simplemente fusioné dos cosas que encontré en la red y ahora el mapa de bits está cambiando de color en tiempo real. Necesito más tiempo para repasar el código, pero eche un vistazo a estos dos enlaces: - http://www.anddev.org/viewtopic.php?p=16463 (solo comente mPaint.setColorFilter (null);) - http://www.quasimondo.com/archives/000565.php Así que la idea es crear un bmp con un objeto de pintura, y luego agregar un filtro a esa pintura en forma de ColorMatrix. – zorglub76

Respuesta

0

Una posibilidad es precrear los rectángulos en su PC de desarrollador para cada posición del control deslizante, incrustarlos como recursos, y luego cambiarlos en el derecho cuando el control deslizante cambie. Esto puede ser una aplicación importante, pero será agradable y rápido.

No he tratado mucho con la API de gráficos 2D, por lo que no sé si hay otras posibilidades (por ejemplo, matrices de colores).

4

OpenIntents tiene un muy buen selector de color que puede usar. Se puede instalar como una aplicación independiente y se puede iniciar con Intents.

+1

Todos los enlaces están rotos. http://www.openintents.org/action/org-openintents-action-pick-color/ es lo más parecido a un selector de color que está disponible en openintent.org. – Gizmomogwai

8

Puede crear el rectángulo con las variantes de saturación/valor que cambian de acuerdo con el tono seleccionado, por el dibujo el rectángulo con LinearGradients.

Puede incorporar el código aquí: http://code.google.com/p/android-color-picker/ en su aplicación. Parece que esto es lo que quieres.

+0

yuku, ¡su selector de color se ve genial! Buscando usarlo para el widget de DigiClock, adorando que no se necesiten intentos ni otras aplicaciones para ser instaladas, ¡gracias por una tonelada! – DavidG

+0

He añadido este al widget de DigiClock, y hasta el momento mis usuarios están realmente impresionados. Gracias otra vez yuku !! – DavidG

+0

se ve muy bien, podría usar esto :) –

0

¿Se puede aplicar esto también a un selector de color de imagen?

Caso de uso:

  1. Seleccione un píxel en una imagen en particular.
  2. El píxel seleccionado genera un color en forma de rectángulo.
  3. ¿Quizás generando códigos de color para el píxel seleccionado?
Cuestiones relacionadas