CERCA
PER MODELLO
FullScreen Chatbox! :)

Utente del giorno: 9mm con ben 3 Thanks ricevuti nelle ultime 24 ore
Utente della settimana: 9mm con ben 8 Thanks ricevuti negli ultimi sette giorni
Utente del mese: 9mm con ben 29 Thanks ricevuti nell'ultimo mese

Visualizzazione dei risultati da 1 a 4 su 4
Discussione:

Passaggio valore di una variabile tra più activity

Se questa discussione ti è stata utile, ti preghiamo di lasciare un messaggio di feedback in modo che possa essere preziosa in futuro anche per altri utenti come te!
  1. #1
    Baby Droid


    Registrato dal
    Mar 2012
    Località
    pordenone
    Messaggi
    13
    Smartphone
    htc evo 3d

    Ringraziamenti
    0
    Ringraziato 0 volte in 0 Posts
    Predefinito

    Passaggio valore di una variabile tra più activity

    Salve, volevo creare un'applicazione che passasse un valore (il punteggio) che rimanesse comune in tutte le attività.
    Nessun problema a far comunicare le prime due attività, ma per la terza mi scrive come errore "The final local variable i cannot be assigned, since it is defined in an enclosing type"
    ecco il mio codice:
    intent=new Intent(getApplicationContext(), Livello2.class);
    //String pkg=getPackageName();
    //intent.putExtra(".myInt", i);// startActivity(intent);
    //intent.putExtra(".myInt", i2);

    bgiusto = (Button) findViewById (R.id.bgiusto);
    bsbagliato2 = (Button) findViewById (R.id.bsbagliato2);
    bsbagliato = (Button) findViewById (R.id.bsbagliato);
    tv = (TextView) findViewById (R.id.tv);


    bgiusto.setOnClickListener(new View.OnClickListener() {

    public void onClick(View v) {
    // TODO Auto-generated method stub
    tv.setText(Integer.toString(i));
    intent.putExtra("Punteggio:", i);
    startActivity(intent);

    }
    });


    bsbagliato.setOnClickListener(new View.OnClickListener() {

    public void onClick(View v) {
    // TODO Auto-generated method stub
    tv.setText(Integer.toString(i=i-50));

    }
    });
    e il livello 2 mi da errore:

    final Intent intent2=getIntent();
    final int i=intent2.getIntExtra("Punteggio:", -1);
    tv.append("Punteggio:"+i+"\n");
    final int i2=i;

    bgiusto.setOnClickListener(new View.OnClickListener() {

    public void onClick(View v) {
    // TODO Auto-generated method stub
    tv3.setText(Integer.toString(i));
    intent.putExtra("Punteggio:", i);
    startActivity(intent2);

    }
    });

    bsbagliato.setOnClickListener(new View.OnClickListener() {

    public void onClick(View v) {
    // TODO Auto-generated method stub
    intent.putExtra("Punteggio:", i=i-50);
    tv.setText(Integer.toString(i=i-50));
    }
    });



    bsbagliato2.setOnClickListener(new View.OnClickListener() {

    public void onClick(View v) {
    // TODO Auto-generated method stub
    intent.putExtra("Punteggio:", i=i-50);
    tv.setText(Integer.toString(i=i-50));
    }
    });
    }
    }
    Ultima modifica di ormet; 31-05-12 alle 22:30

  2.  
  3. #2
    Senior Droid L'avatar di frank17next


    Registrato dal
    Jan 2010
    Località
    Campobasso
    Messaggi
    739
    Smartphone
    GNexus, Galaxy Note, GT 10.1

    Ringraziamenti
    16
    Ringraziato 143 volte in 102 Posts
    Predefinito

    Ciao,

    puoi postare le intere classi? Da quel poco che si vede, dichiari delle variabili final (all'interno del metodo onCreate() ?) quando ti converebbe utilizzarle come attributi della classi, dichiarandole al di fuori del metodo a cui appartiene il codice che hai postato.
    Nexus 6 - 5.0.1 Stock
    Nexus 5 - 5.0.1 Stock + Root
    Galaxy Note 3 GT-N9005 - 4.4.4 Stock + Root
    Galaxy Tab 10.1 Slim P7500 - [JB] CyanogenMod 10 4.1.2 Pershoot (Nightly 20121013)
    ------------------------------------------------------------------------
    https://sites.google.com/site/frank17next/

  4. #3
    Baby Droid


    Registrato dal
    Mar 2012
    Località
    pordenone
    Messaggi
    13
    Smartphone
    htc evo 3d

    Ringraziamenti
    0
    Ringraziato 0 volte in 0 Posts
    Predefinito

    Quote Originariamente inviato da frank17next Visualizza il messaggio
    Ciao,

    puoi postare le intere classi? Da quel poco che si vede, dichiari delle variabili final (all'interno del metodo onCreate() ?) quando ti converebbe utilizzarle come attributi della classi, dichiarandole al di fuori del metodo a cui appartiene il codice che hai postato.
    Ciao,innanzitutto grazie della tempestiva risposta,comunque si,il problema stava nel fatto che dichiaravo la variabile "final"..ho risolto togliendo questa dichiarazione e mettendo nell'OnClick la specifica della classe (Main.this.variabile)..

    Ma se volessi,oltre a modificare il valore della variabile intera premendo un tasto, far si che esso cambi di secondo in secondo? (Vorrei che il valore scendesse ogni secondo e che se premo un pulsante tolga ulteriori 50)..
    È una cosa fattibile?

  5. #4
    Senior Droid L'avatar di frank17next


    Registrato dal
    Jan 2010
    Località
    Campobasso
    Messaggi
    739
    Smartphone
    GNexus, Galaxy Note, GT 10.1

    Ringraziamenti
    16
    Ringraziato 143 volte in 102 Posts
    Predefinito

    Quote Originariamente inviato da ormet Visualizza il messaggio
    Ciao,innanzitutto grazie della tempestiva risposta,comunque si,il problema stava nel fatto che dichiaravo la variabile "final"..ho risolto togliendo questa dichiarazione e mettendo nell'OnClick la specifica della classe (Main.this.variabile)..

    Ma se volessi,oltre a modificare il valore della variabile intera premendo un tasto, far si che esso cambi di secondo in secondo? (Vorrei che il valore scendesse ogni secondo e che se premo un pulsante tolga ulteriori 50)..
    È una cosa fattibile?
    Si, sicuramente. Non ho esperienza di modifiche all'interfaccia grafica utilizzando un 'Timer', tuttavia credo che questo tutorial faccia al caso tuo:

    Updating the UI from a Timer | Android Developers
    Nexus 6 - 5.0.1 Stock
    Nexus 5 - 5.0.1 Stock + Root
    Galaxy Note 3 GT-N9005 - 4.4.4 Stock + Root
    Galaxy Tab 10.1 Slim P7500 - [JB] CyanogenMod 10 4.1.2 Pershoot (Nightly 20121013)
    ------------------------------------------------------------------------
    https://sites.google.com/site/frank17next/

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire risposte
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Torna su
Privacy Policy