Autore Topic: Colore celle GridView  (Letto 308 volte)

Offline ChriC

  • Nuovo arrivato
  • *
  • Post: 1
  • Respect: 0
    • Mostra profilo
  • Sistema operativo:
    Win8
Colore celle GridView
« il: 30 Aprile 2015, 22:41:52 CEST »
0
Ciao, ho una GridView popolata da un Array:
Codice (Java): [Seleziona]
static final String[] orari_i = new String[]{
            "8:00", "8:15", "8:30", "8:45", "9:00", "9:15", "9:30", "9:45", "10:00", "10:15",
            "10:30", "10:45", "11:00", "11:15", "11:30", "11:45", "12:00", "12:15", "12:30", "12:45",
            "13:00", "13:15", "13:30", "13:45", "14:00", "14:15", "14:30", "14:45", "15:00", "15:15",
            "15:30", "15:45", "16:00", "16:15", "16:30", "16:45", "17:00", "17:15", "17:30", "17:45",
            "18:00", "18:15", "18:30", "18,45", "19:00", "19:15", "19:30", "19:45"};
nell'onCreate() dell'activity:
Codice (Java): [Seleziona]
orari_inizio = (GridView) findViewById(R.id.gridView3);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, orari_i);
ora nel database ho memorizzato N orari con associati N colori.
Quando interrogo il db voglio colorare la cella della GridView che corrisponde all'orario dell'Array.
Ho creato il metodo per interrogare il database, ma ora nel metodo getView(), non sò come associare il colore presente nel database alla cella della GridView. Grazie per il vostro aiuto.
Codice (Java): [Seleziona]
private void OraInizio() {
 SQLiteDatabase db = new DatabaseHelper(this).getReadableDatabase();
        final List<Dettaglio> dettagli1 = new ArrayList<Dettaglio>();
        String tab = "SELECT .................";
        Cursor cur = db.rawQuery(tabella_op, null);
        while (cur.moveToNext()) {
           Dettaglio d1 = new Dettaglio();
           
            d1.ora_inizio = cur.getString(0);
           
            d1.colore = cur.getInt(1);

            dettagli1.add(d1);
 }
        cur.close();
        db.close();

        ListAdapter adapter = new ArrayAdapter<Dettaglio>(this, android.R.layout.simple_list_item_1, dettagli1) {
           @Override
            public View getView(int position, View convertView, ViewGroup parent) {
                View view = super.getView(position, convertView, parent);



                    orari_inizio.setOnItemClickListener(new OnItemClickListener() {
                    @Override
                    public void onItemClick(AdapterView<?> parent, View view, int position, long id) {


 }

                });

                return view;
            }
        };
        orari_inizio.setAdapter(adapter);


    }

Offline tonno16

  • Utente storico
  • *****
  • Post: 1197
  • Respect: +58
    • Mostra profilo
  • Dispositivo Android:
    moto g
  • Play Store ID:
    Diego Tonini
  • Sistema operativo:
    OpenSuse
Re:Colore celle GridView
« Risposta #1 il: 01 Maggio 2015, 00:06:58 CEST »
0
Crea un custom cursorAdapter invece che un arrayadapter