Autore Topic: Interruzione imprevista dell'applicazione  (Letto 2007 volte)

Offline Daag

  • Nuovo arrivato
  • *
  • Post: 8
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy S2
  • Sistema operativo:
    Ubuntu 10.10
Interruzione imprevista dell'applicazione
« il: 19 Febbraio 2012, 14:33:31 CET »
0
Salve a tutti, è qualche settimana che sto incominciando a creare applicazioni android usando Eclipse con il linguaggio java. Continuo a riscontrare un'errore ogni volta che in un'applicazione comincio a gestire due file xml con all'interno di essi oggetti grafici differenti.. il compilatore non mi dà errore di sintassi ma quando eseguo l'applicazione  l'applicazione si chiude immediatamente e riporta degli errori di cui allego il LogCat.. Si risolve tutto se tolgo dal codice le dichiarazioni degli oggetti! ..non so più come fare a risolvere e mi appello a voi!

devo postare qualche codice come le Activity, il Manifest oppure i file XML?

Offline IacopoDeeNosee

  • Utente junior
  • **
  • Post: 128
  • Respect: +33
    • Google+
    • iacopodeenosee
    • Mostra profilo
    • visualhunter
  • Dispositivo Android:
    Samsung Nexus S - GT-I9023
  • Play Store ID:
    IacopoDeeNosee
  • Sistema operativo:
    Arch linux x86_64
Re:Interruzione imprevista dell'applicazione
« Risposta #1 il: 19 Febbraio 2012, 16:16:27 CET »
0
Citazione
02-19 14:23:43.975: E/AndroidRuntime(22385): Caused by: java.lang.NullPointerException
02-19 14:23:43.975: E/AndroidRuntime(22385):    at android.app.Activity.findViewById(Activity.java:1653)
02-19 14:23:43.975: E/AndroidRuntime(22385):    at andro.tris.AndroTrisActivity.<init>(AndroTrisActivity.java:13)
nel logcat trovi il punto esatto in cui il programma cade: AndroTrisActivity.java nella riga 13,poi mostrare quella parte di codice?
l'errore fa riferimento ad un puntatore nullo perciò avrai sbagliato ad inizializzare qualche elemento dell'activity,ma senza vedere il codice ci è difficile aiutarti.8y3

Zate

  • Visitatore
R: Interruzione imprevista dell'applicazione
« Risposta #2 il: 19 Febbraio 2012, 16:26:35 CET »
0
Anche l'xml del layout che utilizzi :-)

Offline Daag

  • Nuovo arrivato
  • *
  • Post: 8
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy S2
  • Sistema operativo:
    Ubuntu 10.10
Re:Interruzione imprevista dell'applicazione
« Risposta #3 il: 19 Febbraio 2012, 17:14:19 CET »
0
Questa è la porzione di codice java che dà errore:

Codice (Java): [Seleziona]
public class AndroTrisActivity extends Activity
{
       
    Button cmd_unGiocatore = (Button) findViewById(R.id.cmd_unGiocatore);  //l'errore si verifica qui
    Button cmd_dueGiocatori = (Button) findViewById(R.id.cmd_dueGiocatori);
    Button cmd_esci = (Button) findViewById(R.id.cmd_esci);
 

questo è il file XML a cui è collegata quella parte di codice:

Codice (XML): [Seleziona]
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="match_parent" >

    <TextView
        android:id="@+id/lbl_Titolo"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="58dp"
        android:text="ANDRO - TRIS"
        android:textAppearance="?android:attr/textAppearanceLarge" />

    <Button
        android:id="@+id/cmd_unGiocatore"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/lbl_Titolo"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="30dp"
        android:text="1 GIOCATORE" />

    <Button
        android:id="@+id/cmd_dueGiocatori"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/cmd_unGiocatore"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="30dp"
        android:text="2 GIOCATORI" />

    <Button
        android:id="@+id/cmd_help"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/cmd_dueGiocatori"
        android:layout_alignRight="@+id/cmd_dueGiocatori"
        android:layout_below="@+id/cmd_dueGiocatori"
        android:layout_marginTop="30dp"
        android:text="HELP" />

    <Button
        android:id="@+id/cmd_esci"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/cmd_unGiocatore"
        android:layout_alignRight="@+id/cmd_help"
        android:layout_below="@+id/cmd_help"
        android:layout_marginTop="60dp"
        android:text="ESCI" />

</RelativeLayout>

Offline Ricky`

  • Amministratore
  • Utente storico
  • *****
  • Post: 3489
  • Respect: +506
    • Github
    • Google+
    • rciovati
    • Mostra profilo
Re:Interruzione imprevista dell'applicazione
« Risposta #4 il: 19 Febbraio 2012, 17:23:05 CET »
0
In codice dove fai il findViewById devi metterlo nell'onCreate dopo aver fatto il setContentView

Offline Daag

  • Nuovo arrivato
  • *
  • Post: 8
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy S2
  • Sistema operativo:
    Ubuntu 10.10
Re:Interruzione imprevista dell'applicazione
« Risposta #5 il: 19 Febbraio 2012, 17:45:31 CET »
0
Funziona!! Grazie mille! ..scusa l'ignoranza, pensavo potessero essere dichiarati come proprietà  :-X

..ma se per esempio utilizzo un metodo per agire sugli oggetti come faccio?
« Ultima modifica: 19 Febbraio 2012, 18:04:26 CET da Daag »

Offline Ricky`

  • Amministratore
  • Utente storico
  • *****
  • Post: 3489
  • Respect: +506
    • Github
    • Google+
    • rciovati
    • Mostra profilo
Re:Interruzione imprevista dell'applicazione
« Risposta #6 il: 19 Febbraio 2012, 18:18:56 CET »
0
Le dichiari come proprietà ma le inizializzi nell'oncreate.