Autore Topic: l'app continua a crashare quando popolo uno spinner  (Letto 694 volte)

Offline daniweb

  • Nuovo arrivato
  • *
  • Post: 30
  • Respect: +1
    • Mostra profilo
  • Dispositivo Android:
    galaxy s2
  • Sistema operativo:
    windows 7
l'app continua a crashare quando popolo uno spinner
« il: 05 Novembre 2012, 19:46:56 CET »
0
Ciao a tutti,
spero sia la sezione corretta.

sto cercando di popolare uno spinner tramite dei dati presi dal db.
ma ogni volta che ci provo la risultante è sempre quella.

la funzione che ho usato per recuperare i dati è questa:
Codice (Java): [Seleziona]
public List<String> spinnerClassi(long prgId){
        List<String> classi = new ArrayList<String>();
       
        Cursor mCursor = mDb.query(true, ClasseTable.TABLE_NAME, ClasseTable.COLUMNS, ClasseTable.PROGETTO + "=" + prgId, null, null, null, null, null);  
 
        if (mCursor.moveToFirst()) {
            do {
                classi.add(mCursor.getString(1));
            } while (mCursor.moveToNext());
        }

        return classi;
    }

mentre quella per popolare lo spinner è:
Codice (Java): [Seleziona]
        private void loadSpinnerClassi(Long ProgettoID) {
        // Spinner Drop down elements
        List<String> classi= mDbHelper.spinnerClassi(ProgettoID);
 
        // Creating adapter for spinner
        ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(this,
                android.R.layout.simple_spinner_item, classi);
 
        Drop down layout style - list view with radio button
        dataAdapter
                .setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
 
        // attaching data adapter to spinner
        spinnerClasseBene.setAdapter(dataAdapter);
    }

potreste darmi qualche consiglio?
l'errore è sempre
11-05 19:42:40.150: E/AndroidRuntime(8231): java.lang.RuntimeException: Unable to start activity ComponentInfo{my.app.test/my.app.test.Bene}: java.lang.NullPointerException
11-05 19:42:40.150: E/AndroidRuntime(8231):    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1751)

Offline Sakazaki

  • Utente normale
  • ***
  • Post: 396
  • Respect: +74
    • Mostra profilo
  • Dispositivo Android:
    Sony xperia Z
  • Play Store ID:
    Saka Labs
  • Sistema operativo:
    Windows 8
R: l'app continua a crashare quando popolo uno spinner
« Risposta #1 il: 05 Novembre 2012, 20:47:58 CET »
0
Posta più log. Sicuramente la riga che genera il null pointer è riportata più in basso rispetto alla parte che hai condiviso :)

Inviato dal mio XT910 con Tapatalk 2


Offline daniweb

  • Nuovo arrivato
  • *
  • Post: 30
  • Respect: +1
    • Mostra profilo
  • Dispositivo Android:
    galaxy s2
  • Sistema operativo:
    windows 7
Re:l'app continua a crashare quando popolo uno spinner
« Risposta #2 il: 06 Novembre 2012, 10:15:44 CET »
+1
ciao,
ti riporto il testo del LogCat
Citazione
11-06 10:07:40.690: E/AndroidRuntime(2732): FATAL EXCEPTION: main
11-06 10:07:40.690: E/AndroidRuntime(2732): java.lang.RuntimeException: Unable to start activity ComponentInfo{my.app.Test/my.app.Test.Bene}: java.lang.NullPointerException
11-06 10:07:40.690: E/AndroidRuntime(2732):    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1751)
11-06 10:07:40.690: E/AndroidRuntime(2732):    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1767)
11-06 10:07:40.690: E/AndroidRuntime(2732):    at android.app.ActivityThread.access$1500(ActivityThread.java:122)
11-06 10:07:40.690: E/AndroidRuntime(2732):    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1005)
11-06 10:07:40.690: E/AndroidRuntime(2732):    at android.os.Handler.dispatchMessage(Handler.java:99)
11-06 10:07:40.690: E/AndroidRuntime(2732):    at android.os.Looper.loop(Looper.java:132)
11-06 10:07:40.690: E/AndroidRuntime(2732):    at android.app.ActivityThread.main(ActivityThread.java:4028)
11-06 10:07:40.690: E/AndroidRuntime(2732):    at java.lang.reflect.Method.invokeNative(Native Method)
11-06 10:07:40.690: E/AndroidRuntime(2732):    at java.lang.reflect.Method.invoke(Method.java:491)
11-06 10:07:40.690: E/AndroidRuntime(2732):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:844)
11-06 10:07:40.690: E/AndroidRuntime(2732):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:602)
11-06 10:07:40.690: E/AndroidRuntime(2732):    at dalvik.system.NativeStart.main(Native Method)
11-06 10:07:40.690: E/AndroidRuntime(2732): Caused by: java.lang.NullPointerException
11-06 10:07:40.690: E/AndroidRuntime(2732):    at my.app.Test.Bene.loadSpinnerClassi(Bene.java:105)
11-06 10:07:40.690: E/AndroidRuntime(2732):    at my.app.Test.Bene.onCreate(Bene.java:80)
11-06 10:07:40.690: E/AndroidRuntime(2732):    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1048)
11-06 10:07:40.690: E/AndroidRuntime(2732):    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1715)
11-06 10:07:40.690: E/AndroidRuntime(2732):    ... 11 more
11-06 10:07:40.700: E/android.os.Debug(285): Dumpstate > /data/log/dumpstate_app_error

se devo essere sincero l'unica cosa che ho capito è che l'errore fa riferimento alla classe Bene OnCreate riga 80
che è dove chiamo il metodo loadSpinnerClassi()

e la riga 105 dove dichiaro il metodo loadSpinnerClassi()

EDIT:
ok.. ... ... chiedo umilmente scusa.
nel metodo OnCreate avevo completamente dimenticato di aprire la connessione al DB

mDbHelper = new NotesDbAdapter(this);
mDbHelper.open();