Autore Topic: Contenuto item listview non in ordine  (Letto 381 volte)

Offline LeonGuerrero

  • Nuovo arrivato
  • *
  • Post: 2
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Samsung GT-i9300
  • Sistema operativo:
    Cyanogenmod 11
Contenuto item listview non in ordine
« il: 12 Aprile 2014, 16:46:12 CEST »
0
Buongiorno a tutti.
Mi scuso già da ora se non mi sono presentato ma ero già presente su questo forum. Poi ho dimenticato nick e password quindi ho preferito creare un nuovo account :)
Bando alle ciance: ho una listview popolata da elementi presi da un server remoto. Quando recupero i dati dal serve e li metto in due arraylist, il loro ordine è perfetto. Quando invece poi l'adapter va a popolare la listview, i contenuti risultato sballati.
Ogni item è composto da un titolo e dal corpo di un articolo. Ora mi succede, per esempio, che mi vengano fuori cose del genere: "Titolo 1 Corpo 3"; "Titolo 2 Corpo 1"; "Titolo 3 Corpo 2"....
Sono quattro giorni che ci sbatto la testa ma niente, nessuna soluzione...
Mi sapreste aiutare?
Qui c'è il codice dell'adapter:
Codice (Java): [Seleziona]
public class TestImmagineAdapter extends BaseAdapter {
        Context context;
        ArrayList<String> titoli = null;
        ArrayList<String> articoli = null;
        ArrayList<String> date = null;

        public TestImmagineAdapter(ArrayList<String> titoli, ArrayList<String> articoli, Context cont) {
                context = cont;
                this.titoli = titoli;
                this.articoli = articoli;
        }

        public int getCount() {
                        return titoli.size();
        }

        public Object getItem(int position) {

                        return titoli.get(position);
        }

        public long getItemId(int position) {
                return position;
        }

        public View getView(int position, View convertView, ViewGroup parent) {
                ViewHolder viewHolder = null;
                LayoutInflater inflater = (LayoutInflater) context
                                .getSystemService(Context.LAYOUT_INFLATER_SERVICE);

                        if (convertView == null) {
            LayoutInflater inflaterfix = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
            convertView = inflaterfix.inflate(R.layout.listview, null);
            viewHolder = new ViewHolder();
            viewHolder.title = (TextView)convertView.findViewById(R.id.textView1);
            viewHolder.body = (TextView)convertView.findViewById(R.id.textView2);
            convertView.setTag(viewHolder);
        } else {
            viewHolder = (ViewHolder) convertView.getTag();
        }
                    viewHolder.title.setText(titoli.get(position));
                    viewHolder.body.setText(articoli.get(position));
                        return convertView;
                       
                   
}
         private class ViewHolder {
                public TextView title;
                public TextView body;
            }  
}

Offline LeonGuerrero

  • Nuovo arrivato
  • *
  • Post: 2
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Samsung GT-i9300
  • Sistema operativo:
    Cyanogenmod 11
Re:Contenuto item listview non in ordine
« Risposta #1 il: 14 Aprile 2014, 11:21:05 CEST »
0
Facendo altri test ho notato che il problema non è l'adapter, ma la richiesta dei dati dal server remoto. Ogni singola la richiesta ritorna un array con gli elementi in ordine sparso e sempre differente... Qualcuno può aiutarmi?

Offline lorux

  • Utente junior
  • **
  • Post: 97
  • Respect: +12
    • Google+
    • lor.catalano
    • Mostra profilo
  • Dispositivo Android:
    Galaxy S2
  • Sistema operativo:
    Windows
Re:Contenuto item listview non in ordine
« Risposta #2 il: 14 Aprile 2014, 16:38:43 CEST »
0
se ti arrivano già in quell'ordine c'è un problema a priori,possibile che il server non ha ordinamento o non ci sia collegamento tra titolo e corpo?