Vai al contenuto

[RISOLTO] applicationWillTerminate


Messaggi raccomandati

Ciao ragazzi, sto cercando qualcuno che mi spieghi questo:

come usare applicationwillterminate che è presente nel appdelegate.

Non riesco a capirlo....:)

Mi sto chiedendo in che maniera posso richiamare la funzione che è presente in un controller che nel momento della chiusura è attivo, che mi salva i dati.

Qualche anima pia armata di pazienza risponderà?

Ciao

Marcello

Link al commento
Condividi su altri siti

Devi impostare il controller come delegato dell'applicazione.

Poi implementare il metodo da te indicato.

L'applicazione prima di chiudersi chiamerà quel metodo tramite il suo delegato (che sarà il tuo controller) e ti permetterà di fare tutte le operazioni di salvataggio che vuoi. :)

Marco - Gallery

MacBook Nero 2.2 GHz Intel Core 2 Duo - 4 GB RAM - Mac OS X 10.6 Snow Leopard

Link al commento
Condividi su altri siti

Ciao, prima di tutto grazie di avermi risposto, non capisco però il concetto. Io nella applicazione ho già XXXXappDelegate, corretto? Ok tu mi dici che la classe della view nella quale sto operando deve anche quella diventare una delegate, ma come? Immagino che la risposta non sia semplice.

Io ho comunque diverse view e quindi diverse classi e.. quindi diversi punti dove la mia applicazione si può interrompere. Allora tutte queste classi diventano tutte delegate dell'applicazione, se voglio salvare lo stato dell'applicazione in ogni view?

Abbi pazienza..

Ciao

Marcello

Link al commento
Condividi su altri siti

Ciao, prima di tutto grazie di avermi risposto, non capisco però il concetto. Io nella applicazione ho già XXXXappDelegate, corretto? Ok tu mi dici che la classe della view nella quale sto operando deve anche quella diventare una delegate, ma come? Immagino che la risposta non sia semplice.

Io ho comunque diverse view e quindi diverse classi e.. quindi diversi punti dove la mia applicazione si può interrompere. Allora tutte queste classi diventano tutte delegate dell'applicazione, se voglio salvare lo stato dell'applicazione in ogni view?

Abbi pazienza..

Ciao

Marcello

Per impostare il delegato dell'applicazione basta che da IB trascini con Ctrl+Click il collegammento dall'Applicazione all'oggetto che deve fare da delegato e selezioni appunto delegate.

Se tu ce l'hai già impostato, basta che implementi il suddetto metodo per salvare le impostazioni che ti servono.

Se hai più view sta a te trovare il modo di salvare le impostazioni di tutte nel modo corretto.

Ti ricordo che esiste la classe NSUserDefaults che fa probabilmente tutto quello che ti serve.

Marco - Gallery

MacBook Nero 2.2 GHz Intel Core 2 Duo - 4 GB RAM - Mac OS X 10.6 Snow Leopard

Link al commento
Condividi su altri siti

Per impostare il delegato dell'applicazione basta che da IB trascini con Ctrl+Click il collegammento dall'Applicazione all'oggetto che deve fare da delegato e selezioni appunto delegate.

Se tu ce l'hai già impostato, basta che implementi il suddetto metodo per salvare le impostazioni che ti servono.

Se hai più view sta a te trovare il modo di salvare le impostazioni di tutte nel modo corretto.

Ti ricordo che esiste la classe NSUserDefaults che fa probabilmente tutto quello che ti serve.

Grazie questa sera mi applico.

Prima di farlo voglio dire che, il metodo è stato implementato all'interno della classe della view, quindi si rifà alle variabili presenti in quella classe. Dall'xxxappDelegate è chiaro che non posso accedere al metodo e tantomeno alle variabili.

Se hai ulteriori commenti per farmi capire meglio il meccanismo, ti ringrazio, se no ci sentiamo dopo lo studio che farò sugli spunti che mi hai dato.

Grazie

Marcello

Ok ho dato una occhiata a NSUserDefaults e, come hai detto tu, è quello che mi serve.

Puoi però farmi capire la differenza, a parte la semplicità, tra salvare lo stato in questa maniera e servirsi di sqlite o accesso a file, come ho letto nei libri che mi sono preso? Un'altra cosa, ma queste cose dove le salva?

Grazie

Marcello

Link al commento
Condividi su altri siti

Ok ho dato una occhiata a NSUserDefaults e, come hai detto tu, è quello che mi serve.

Puoi però farmi capire la differenza, a parte la semplicità, tra salvare lo stato in questa maniera e servirsi di sqlite o accesso a file, come ho letto nei libri che mi sono preso?

Se devo essere sincero non saprei dirti quali siano le differenze (o meglio, quali siano i vantaggi) di uno e dell'altro, dato che mysql non l'ho mai usato.

In generale NSUserDefaults serve per salvare le preferenze dell'applicazione (anche su Mac).

Il formato in cui vengono salvati i dati è il Property list.

Se quindi devi salvare pochi dati, come i valori di alcuni textField, lo stato di alcuni bottoni o comunque valori riferibili più che altro all'interfaccia grafica, va sicuramente bene NSUserDefaults.

Se poi tu per salvare lo stato dell'applicazione hai bisogno di salvare un gran numero di dati, allora forse ti conviene usare un database dedicato come mysql.

Ma ripeto che non ho esperienze a riguardo. :ciao:

Marco - Gallery

MacBook Nero 2.2 GHz Intel Core 2 Duo - 4 GB RAM - Mac OS X 10.6 Snow Leopard

Link al commento
Condividi su altri siti

Se poi tu per salvare lo stato dell'applicazione hai bisogno di salvare un gran numero di dati, allora forse ti conviene usare un database dedicato come mysql.

Ma ripeto che non ho esperienze a riguardo. ;)

Ti ringrazio tantissimo della tua pazienza e disponibilità.

Ciao

Marcello

Link al commento
Condividi su altri siti

Archiviato

Questa discussione è archiviata e chiusa a future risposte.

×
×
  • Crea Nuovo...