Autore Topic: Errore listview  (Letto 452 volte)

Offline ROS

  • Utente normale
  • ***
  • Post: 196
  • Respect: +5
    • Mostra profilo
  • Sistema operativo:
    Ubuntu 10.04
Errore listview
« il: 05 Agosto 2011, 19:11:32 CEST »
0
Ciao a tutti,
ho provato a cercare in internet ma pare che un errore come questo nessuno l'abbia avuto...o almeno, si trovano simili, ma non esattamente come questo, e dunque non so come cavarmela.

L'errore e' il seguente:
Codice: [Seleziona]
java.lang.IllegalStateException: android.widget.ListView is not a  view that can be bounds by this SimpleAdapter
Il logcat e' praticamente inutile in quanto non viene riportata in nessuna riga la riga che ha causato l'errore e quindi non mi e' stato di aiuto...

A cosa puo' essere dovuto?

Il codice che credo l'abbia generato e' il seguente:
Codice: [Seleziona]
        final ListView lw   =   (ListView) findViewById( R.id.book_list );
        lw.setVisibility(View.VISIBLE);

        ListView listBookView   =   (ListView) findViewById( R.id.book_list );
        ArrayList<HashMap<String, Object>> my_list  = new ArrayList<HashMap<String, Object>>();

        for ( int x=0; x< book_list.size(); x++)
        {
            String[] valori_book    =   book_list.get( x ).getObjVars();
            HashMap<String, Object> map = new HashMap<String, Object>();
            map.put("book", valori_book[ 0 ]);
            map.put("descr", valori_book[ 1 ] );

            my_list.add(map);
        }
        // ...
        SimpleAdapter showMenu = new SimpleAdapter(this, my_list, R.layout.activity_book_booklistmask,
                    new String[] { "book" , "descr" }, new int[] {R.id.nome_quaderno, R.id.descrizione_quaderno});
        listBookView.setAdapter(showMenu);

Offline Luigi.Arena

  • Utente senior
  • ****
  • Post: 616
  • DACIA DUSTER 4X4 SUPER
  • Respect: +56
    • Mostra profilo
    • ArenaWebTest
  • Dispositivo Android:
    epad m009
  • Play Store ID:
    Luigi Arena
  • Sistema operativo:
    Windows 7
Re:Errore listview
« Risposta #1 il: 08 Agosto 2011, 17:16:19 CEST »
0
Perchè non metti vari log nel codice pensi vada in errore ?
Ad esempio :
Log.i("LogCatInfo","1");
Log.i("LogCatInfo","2");
Log.i("LogCatInfo","3");

Poi quando va in  errore guardi nel log e controlla qual'è l'ultimo numero eseguito.
È stata trovata una soluzione al tuo problema?Evidenzia il post più utile premendo . È un ottimo modo per ringraziare chi ti ha aiutato .

Offline Qlimax

  • Moderatore globale
  • Utente senior
  • *****
  • Post: 757
  • Respect: +203
    • Google+
    • _Qlimax
    • Mostra profilo
    • www.egsolutions.ch
  • Dispositivo Android:
    Galaxy Nexus - Nexus One - Wildfire - Magic
  • Play Store ID:
    egsolutions.ch
  • Sistema operativo:
    Ubuntu 12.04, Windows 7
Re:Errore listview
« Risposta #2 il: 08 Agosto 2011, 17:29:12 CEST »
0
sicuro che questo layout:
R.layout.activity_book_booklistmask

contiene
R.id.nome_quaderno  e  R.id.descrizione_quaderno

?

Mi sembra (suppongo dal nome che gli hai dato) che quello è il layout dell'activity, che contiene la listview stessa -> da qui l'errore che ti da.

Il layout che passi al simpleadapter, è il layout che descrive il singolo elemento della listview, non il layout dell'activity.
Deve contenere le tue 2 textview, R.id.nome_quaderno  e  R.id.descrizione_quaderno.