Autore Topic: Salvare stato activity  (Letto 1130 volte)

vincenzodicicco

  • Visitatore
Salvare stato activity
« il: 25 Giugno 2010, 15:28:18 CEST »
0
Salve a tutto questo magnifico forum, ho un'altra domanda da porvi, considerate l'esempio che:
una prima activity con una EditText che contiene del testo e un pulsante che chiama una seconda activity, e la seconda activity contiene un pulsante che riporta alla prima.
Ora, se l'EditText contiene del testo e si passa alla seconda, e dopo tramite il pulsante si passa alla prima; il testo scompare, mentre se si passa alla seconda e poi si preme il tasto indietro il testo esiste ancora.
Per risolvere questo problema qual'è il modo più giusto? le soluzioni che mi vengono in mente sono:
1) creare una classe Singleton come spiegatomi nel tread precedente dove salvare i valori di ogni EditText quando passo tra le activity
2) sempre se possibile, simulare il tasto indietro.

Esiste un modo più elegante? se si, qualche aiuto?.Grazie a tutti

Offline Qlimax

  • Moderatore globale
  • Utente senior
  • *****
  • Post: 757
  • Respect: +202
    • 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:Salvare stato activity
« Risposta #1 il: 25 Giugno 2010, 15:37:11 CEST »
+1
questo succede perche probabimente nel listener del bottone chiami:

startActivity(this,PrimaActivity.class);


quindi avvii una nuova (e quindi vuota) istanza di PrimaActivity.

il bottone indietro invece, termina l' activity, riportandoti in quella precedente (con dati gia inseriti).

quindi, invece di chiamare startActivity(...);, nel codice del bottone della seconda, chiama finish();

Offline bradipao

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 4043
  • keep it simple
  • Respect: +567
    • Github
    • Google+
    • bradipao
    • Mostra profilo
  • Dispositivo Android:
    Nexus 5
  • Play Store ID:
    Bradipao
  • Sistema operativo:
    W7
Re:Salvare stato activity
« Risposta #2 il: 25 Giugno 2010, 18:10:06 CEST »
0
Citazione
Esiste un modo più elegante? se si, qualche aiuto?

In generale sull'argomento del passaggio dati, proprio oggi mi stavo documentando su come passare dati tra Activity e mi sono imbattuto in una FAQ ufficiale che da' una panoramica dell'argomento. Riporto qualche estratto sperando sia on-topic e possa esserti di aiuto.

How do I pass data between Activities/Services within a single application?

Citazione
For sharing complex non-persistent user-defined objects for short duration, the following approaches are recommended:
  • The android.app.Application class
  • A public static field/method
  • A HashMap of WeakReferences to Objects
  • A Singleton class

For sharing complex persistent user-defined objects, the following approaches are recommended:
  • Application Preferences
  • Files
  • contentProviders
  • SQLite DB
NON rispondo a domande nei messaggi privati
Bradipao @ Play Store

Offline Qlimax

  • Moderatore globale
  • Utente senior
  • *****
  • Post: 757
  • Respect: +202
    • 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:Salvare stato activity
« Risposta #3 il: 25 Giugno 2010, 18:57:21 CEST »
0
In generale sull'argomento del passaggio dati, proprio oggi mi stavo documentando su come passare dati tra Activity e mi sono imbattuto in una FAQ ufficiale che da' una panoramica dell'argomento. Riporto qualche estratto sperando sia on-topic e possa esserti di aiuto.

How do I pass data between Activities/Services within a single application?


per il passaggio di dati tra activity, tempo fa ho scritto un tutorial che copre l'argomento:
[facile] Passaggio di dati tra un'activity ed un'altra - Android Developers Italia

quello di vincenzo, però, mi sembra sia un altro problema.





vincenzodicicco

  • Visitatore
Re:Salvare stato activity
« Risposta #4 il: 25 Giugno 2010, 19:17:53 CEST »
0
Grazie mille Qlimax, io ho seguito proprio il tuo tutorial, chiarissimo ed esposto in modo molto semplice, ti ringrazio di nuovo per quest'ulteriore chiarimento  :-)

Offline JD

  • Amministratore
  • Utente storico
  • *****
  • Post: 1600
  • Respect: +232
    • leinardi
    • Mostra profilo
  • Dispositivo Android:
    LG Nexus 5
  • Sistema operativo:
    L'ultima Ubuntu
Re:Salvare stato activity
« Risposta #5 il: 25 Giugno 2010, 19:46:30 CEST »
0
Se hai risolto dai uno sguardo alla mia firma :P
È stata trovata una soluzione al tuo problema?
Evidenzia il post più utile premendo . È un ottimo modo per ringraziare chi ti ha aiutato ;).
E se hai aperto tu il thread marcalo come risolto cliccando !

vincenzodicicco

  • Visitatore
Re:Salvare stato activity
« Risposta #6 il: 25 Giugno 2010, 20:52:21 CEST »
0
Si scusa ad ogni topic l'ho sempre messo, andavo un po di fretta grazie  :-) :-)

Offline menion83

  • Nuovo arrivato
  • *
  • Post: 45
  • Respect: +2
    • Mostra profilo
  • Dispositivo Android:
    Motorola Milestone - Samsung Galaxy Tab - Samsung Galaxy S - LG Optimus One - HTC Dream
  • Sistema operativo:
    Windows 7 Ultimate 32/64 - Ubuntu 10.10
Re:Salvare stato activity
« Risposta #7 il: 09 Giugno 2011, 11:14:22 CEST »
0
Ciao Ragazzi,
ho un problema simile.
Sto cercando di compilare una specie di modulo.
Ho 5 activity e ognuna contiene una serie di campi da compilare.

Se compilo qualche campo nella prima activity e passo alla seconda e poi successivamente torno indietro con finish(); mi ritrovo i campi come li avevo compilati.  Il problema è che facendo finish(); perdo i campi eventualmente compilati nella seconda... quindi tornandoci devo ricompilare il tutto...

C'è un modo per passare dati fra activity e fare avanti e indietro senza perderli?

Aspetto fiducioso una risposta! ;)