Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Android - La mia applicazione si blocca
Forum - Android - La mia applicazione si blocca

Avatar
Reloader90 (Normal User)
Rookie


Messaggi: 40
Iscritto: 15/07/2011

Segnala al moderatore
Postato alle 9:56
Venerdì, 03/02/2012
Codice sorgente - presumibilmente Java

  1. package aldrigos.games.cvep;
  2.  
  3. import android.app.Activity;
  4. import android.os.Bundle;
  5. import android.widget.Button;
  6. import android.widget.TextView;
  7. import aldrigos.games.cvep.Cdom;
  8.  
  9. public class CvepActivity extends Activity {
  10.        
  11.         public int totdom = 1;
  12.         public Cdom listadom[] = new Cdom[2];
  13.        
  14.         public TextView txtdom;
  15.         public Button btnris1;
  16.         public Button btnris2;
  17.         public Button btnris3;
  18.         public Button btnris4;
  19.        
  20.     /** Called when the activity is first created. */
  21.     @Override
  22.     public void onCreate(Bundle savedInstanceState) {
  23.         super.onCreate(savedInstanceState);
  24.         setContentView(R.layout.main);
  25.        
  26.         txtdom  = (TextView)this.findViewById(R.id.txtdom);
  27.         btnris1 = (Button)this.findViewById(R.id.btnris1);
  28.         btnris2 = (Button)this.findViewById(R.id.btnris2);
  29.         btnris3 = (Button)this.findViewById(R.id.btnris3);
  30.         btnris4 = (Button)this.findViewById(R.id.btnris4);
  31.        
  32.         txtdom.setText( String.valueOf(listadom.length) );
  33.        
  34.         listadom[1].testo = "lol";
  35.     }
  36. }



listadom[1].testo = "lol";

senza questa riga fila tutto come l'olio... non sò cosa fare

PM Quote
Avatar
TheKaneB (Member)
Guru^2


Messaggi: 1792
Iscritto: 26/06/2009

Segnala al moderatore
Postato alle 10:27
Venerdì, 03/02/2012
Per capire che succede servono due cose:

- lo stack trace completo al momento del crash (lo vedi dal LogCat)
- il codice della classe Cdom

PM Quote
Avatar
Reloader90 (Normal User)
Rookie


Messaggi: 40
Iscritto: 15/07/2011

Segnala al moderatore
Postato alle 10:47
Venerdì, 03/02/2012
codice Cdom.java
Codice sorgente - presumibilmente Delphi

  1. package aldrigos.games.cvep;
  2.  
  3. public class Cdom {
  4.         public String testo;
  5. }



log chat:

Codice sorgente - presumibilmente Delphi

  1. 02-03 09:53:08.801: D/AndroidRuntime(271): Shutting down VM
  2. 02-03 09:53:08.801: W/dalvikvm(271): threadid=1: thread exiting with uncaught exception (group=0x4001d800)
  3. 02-03 09:53:08.820: E/AndroidRuntime(271): FATAL EXCEPTION: main
  4. 02-03 09:53:08.820: E/AndroidRuntime(271): java.lang.RuntimeException: Unable to start activity ComponentInfo{aldrigos.games.cvep/aldrigos.games.cvep.CvepActivity}: java.lang.NullPointerException
  5. 02-03 09:53:08.820: E/AndroidRuntime(271):      at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663)
  6. 02-03 09:53:08.820: E/AndroidRuntime(271):      at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
  7. 02-03 09:53:08.820: E/AndroidRuntime(271):      at android.app.ActivityThread.access$2300(ActivityThread.java:125)
  8. 02-03 09:53:08.820: E/AndroidRuntime(271):      at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
  9. 02-03 09:53:08.820: E/AndroidRuntime(271):      at android.os.Handler.dispatchMessage(Handler.java:99)
  10. 02-03 09:53:08.820: E/AndroidRuntime(271):      at android.os.Looper.loop(Looper.java:123)
  11. 02-03 09:53:08.820: E/AndroidRuntime(271):      at android.app.ActivityThread.main(ActivityThread.java:4627)
  12. 02-03 09:53:08.820: E/AndroidRuntime(271):      at java.lang.reflect.Method.invokeNative(Native Method)
  13. 02-03 09:53:08.820: E/AndroidRuntime(271):      at java.lang.reflect.Method.invoke(Method.java:521)
  14. 02-03 09:53:08.820: E/AndroidRuntime(271):      at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
  15. 02-03 09:53:08.820: E/AndroidRuntime(271):      at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
  16. 02-03 09:53:08.820: E/AndroidRuntime(271):      at dalvik.system.NativeStart.main(Native Method)
  17. 02-03 09:53:08.820: E/AndroidRuntime(271): Caused by: java.lang.NullPointerException
  18. 02-03 09:53:08.820: E/AndroidRuntime(271):      at aldrigos.games.cvep.CvepActivity.onCreate(CvepActivity.java:34)
  19. 02-03 09:53:08.820: E/AndroidRuntime(271):      at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
  20. 02-03 09:53:08.820: E/AndroidRuntime(271):      at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
  21. 02-03 09:53:08.820: E/AndroidRuntime(271):      ... 11 more


Ultima modifica effettuata da Reloader90 il 03/02/2012 alle 10:57
PM Quote
Avatar
Reloader90 (Normal User)
Rookie


Messaggi: 40
Iscritto: 15/07/2011

Segnala al moderatore
Postato alle 11:21
Venerdì, 03/02/2012
buona notte a me...
dovevo usare il costruttore...

listadom[1] = new Cdom(...);

... se voglio settare attributi...

PM Quote
Avatar
TheKaneB (Member)
Guru^2


Messaggi: 1792
Iscritto: 26/06/2009

Segnala al moderatore
Postato alle 12:25
Venerdì, 03/02/2012
Testo quotato

Postato originariamente da Reloader90:

buona notte a me...
dovevo usare il costruttore...

listadom[1] = new Cdom(...);

... se voglio settare attributi...



stavo per scrivere la stessa cosa :-)

listadom[0] e listadom[1] sono attualmente vuoti, devi chiamare il costruttore per ogni elemento dell'array. Dopodichè puoi scrivere sulla sua variabile interna di tipo String.

PM Quote
Avatar
Reloader90 (Normal User)
Rookie


Messaggi: 40
Iscritto: 15/07/2011

Segnala al moderatore
Postato alle 19:06
Venerdì, 03/02/2012
altro errore!

quando giro lo skermo l'app si resetta

tra l'altro nn dovrebbe nemmeno cambiale l'orientamento! (perhè lo dico io!)

grazie!

PM Quote
Avatar
TheKaneB (Member)
Guru^2


Messaggi: 1792
Iscritto: 26/06/2009

Segnala al moderatore
Postato alle 22:09
Venerdì, 03/02/2012
Testo quotato

Postato originariamente da Reloader90:

altro errore!

quando giro lo skermo l'app si resetta

tra l'altro nn dovrebbe nemmeno cambiale l'orientamento! (perhè lo dico io!)

grazie!



Quello non è un errore, è proprio Android che distrugge e ricrea le Activity quando cambia l'orientamento.

Devi dichiarare nel manifest che la tua activity può gestire in manuale il cambio di orientamento oppure semplicemente indichi un orientamento fisso, sempre nel manifest.

Nel primo caso devi anche intercettare l'evento onConfigurationChange (mi pare si chiami così) in modo tale da evitare la distruzione e ricostruzione dell'Activity.

Io uso questa tecnica quando ho un video player dentro una pagina e non voglio che ruotando riparta il video da capo, ma continui il playback indisturbato.

info: http://developer.android.com/guide/topics/resources/runtim ...

PM Quote