Autore Topic: Modificare layout di un singolo item di una listview al click sull'item stesso  (Letto 281 volte)

Offline Salvo96

  • Nuovo arrivato
  • *
  • Post: 2
  • Respect: 0
    • Google+
    • Mostra profilo
  • Dispositivo Android:
    Motorola Moto G 2013
  • Sistema operativo:
    Windows 8.1
Avrei un problemino con le listview (in generale), dato che non ho trovato un topic adeguato al mio problema, ne creo uno nuovo.  :-)

In pratica ho una listview caricata con un CustomAdapter (estende ArrayAdapter per la precisione), e vorrei che al click su un item qualsiasi della mia lista, il layout di questo item venga modificato, per indicare all'utente quale item ha selezionato, o per fargli capire se la selezione ha avuto buon fine.

Faccio un esempio: In un navigation drawer ho una lista con N item (al click di ognuno corrisponde il caricamento di un fragment), il mio problema è che, dopo, quando riapro il navigation drawer, l'item selezionato della lista deve assumere un aspetto diverso dagli altri (Esempio: icona diversa, colore testo diverso, sfondo diverso), per indicare all'utilizzatore che si trova in quella sezione, però alla riapertura del navigation drawer, attualmente, mi ritrovo che l'item selezionato è uguale a tutti gli altri.

Premetto che ho già pensato ad una soluzione, non molto pratica però, cioè ricreare completamente l'adapter al click su ogni elemento, in cui per l'item selezionato carico dei dati differenti, quindi reimposto la listview con il nuovo adapter, il problema e però che questo metodo potrebbe creare rallentamenti nelle liste molto lunghe.
(Vero o mi sbaglio?)

C'è un metodo per modificare l'item selezionato, senza dover per forza ricaricare anche tutti gli altri?

(PS. Non ho vuluto insrire codici java o xml, perchè il mio è un problema in generale, non essenzialmente del naviation drawer, ma se serve posso mettere qualcosa) ;-)

Grazie in anticipo a chi mi sa rispondere.  ;-)

PPS. Per i progetti uso sempre:  minSdkVersion = 15 e targetSdkVersion = 21, mentre l'api level dello smartphone su cui faccio i test è attualmente 20 (Android Kitkat 4.4.4)
« Ultima modifica: 04 Dicembre 2014, 16:27:42 CET da Salvo96, Reason: Aggiunti api level progetto e api level dispositivo »