2009-10-09 10 views
6

Sto cercando di creare un selettore colori per Android che assomigli a una versione minimalista di Gimp. Quindi, ha un cursore della tonalità e un rettangolo con varianti di saturazione/valore di un colore scelto nel cursore della tonalità.Selettore colore Android - aggiornamento array colori

Domanda: qual è il modo migliore per creare il rettangolo?

Al momento, sto creando un array di pixel 200x200, ma ci vogliono circa 5 secondi per creare e visualizzare il rettangolo con quella matrice. E ho bisogno di colori nel rettangolo per cambiare ogni volta che cambio il valore nel cursore della tonalità ...

Rectangle is bitmap, btw. Posso usare matrici di colori su questo e come? Qualche esempio?

Grazie in anticipo!

+0

Non si conoscono le matrici dei colori, ma è davvero necessario calcolare la bitmap completamente nuova quando qualcosa cambia? Forse c'è un modo veloce per calcolare solo una sorta di delta? Ti dispiacerebbe postare il codice? Anche se non posso aiutarti, mi piacerebbe davvero vedere come vengono calcolati i colori nel rect. – svens

+0

Le matrici di colori sono definitivamente la strada da percorrere! Ho appena unito due cose che ho trovato su rete e la bitmap ora sta cambiando colore in tempo reale. Mi serve ancora un po 'di tempo per rispolverare il codice, ma dai un'occhiata a questi due link: - http://www.anddev.org/viewtopic.php?p=16463 (basta commentare mPaint.setColorFilter (null);) - http://www.quasimondo.com/archives/000565.php Quindi l'idea è di creare un bmp con un oggetto paint, e quindi di aggiungere un filtro a quella vernice sotto forma di ColorMatrix. – zorglub76

risposta

0

Una possibilità è di pre-creare i rettangoli sul PC dello sviluppatore per ciascuna posizione del cursore, incorporarli come risorse e quindi scambiare quello corretto quando il cursore cambia. Questo può fare per un'applicazione portly, ma sarà bello e veloce.

Non mi sono occupato molto dell'API di grafica 2D, quindi non so se ci sono altre possibilità (ad es. Matrici di colori).

4

OpenIntents ha un selezionatore di colori molto bello che è possibile utilizzare. Può essere installato come app indipendente e lanciato con Intents.

+1

Tutti i collegamenti sono interrotti. http://www.openintents.org/action/org-openintents-action-pick-color/ è il più vicino a un selettore di colori disponibile su openintent.org. – Gizmomogwai

8

È possibile creare il rettangolo con le varianti di saturazione/valore che cambiano a seconda della tonalità selezionata, dal disegno il rettangolo con LinearGradients.

È possibile incorporare il codice qui: http://code.google.com/p/android-color-picker/ nell'applicazione. Sembra che questo sia quello che vuoi.

+0

yuku, il tuo color picker sembra fantastico! Cercando di usarlo per il widget DigiClock, amando che non ha bisogno di intents e altre app da installare, grazie a una tonnellata !!! – DavidG

+0

Ho aggiunto questo widget a DigiClock e finora i miei utenti sono rimasti davvero impressionati. Grazie ancora yuku !! – DavidG

+0

sembra molto bello, potrei usare questo :) –

0

Può essere applicato anche a un selettore di colori per immagini?

Caso d'uso:

  1. Selezionare un particolare pixel su un'immagine.
  2. Il pixel selezionato genera un colore su una forma rettangolare.
  3. Forse generando codici colore per il pixel selezionato?