20.04.2013 Views

Tutorial pratici per iPhone SDK v1.6 - Get a Free Blog

Tutorial pratici per iPhone SDK v1.6 - Get a Free Blog

Tutorial pratici per iPhone SDK v1.6 - Get a Free Blog

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

L’ultima istruzione è alla riga 6, ovvero la chiamata del metodo “synchronize”. Non fateci troppo<br />

caso, inseritela. Chi di voi svilup<strong>per</strong>à applicazioni con multithread o accesso a risorse condivise<br />

dovrà sviluppare questo aspetto, <strong>per</strong> gli altri non è nulla di importante.<br />

Ora non ci resta che inserire il codice che deve occuparsi della lettura del valore salvato. Tale<br />

lettura va eseguita, ovviamente, all’avvio dell’applicazione. Nel metodo “viewDidLoad”, quindi,<br />

aggiungiamo il codice seguente (dalla riga 14 alla 19):<br />

1<br />

2<br />

3<br />

4<br />

5<br />

6<br />

7<br />

8<br />

9<br />

10<br />

11<br />

12<br />

13<br />

14<br />

15<br />

16<br />

17<br />

18<br />

19<br />

20<br />

21<br />

22<br />

-(void)viewDidLoad{<br />

!<br />

! // Username e password <strong>per</strong> accedere a Twitter<br />

NSString *username = @"user_name";<br />

NSString *password = @"password";<br />

// Create a TwitterEngine and set our login details.<br />

twitterEngine = [[MGTwitterEngine alloc] initWithDelegate:self];<br />

[twitterEngine setUsername:username password:password];<br />

// <strong>Get</strong> updates from people the authenticated user follows.<br />

[twitterEngine getFollowedTimelineFor:username since:nil<br />

startingAtPage:0];<br />

!<br />

! NSDate *dataUltimoAgg = [[NSUserDefaults standardUserDefaults]<br />

objectForKey:@"data"];<br />

! if (dataUltimoAgg == nil) {<br />

! ! labelUltimoRefresh.text = @"nessun refresh precedente";<br />

! }else{<br />

! ! labelUltimoRefresh.text = [[NSString alloc]<br />

initWithFormat:@"%@",dataUltimoAgg];<br />

! }<br />

!<br />

! [spinner startAnimating];<br />

}<br />

Come potete vedere, abbiamo definito un oggetto di tipo NSDate, che dovrà contenere il valore<br />

della data che leggeremo dai salvataggi. Per leggere tale valore, utilizziamo un metodo appropriato,<br />

nel nostro caso è “objectForKey”. Se, invece, avessimo dovuto leggere un numero<br />

intero avremmo utilizzato il metodo “integerForKey”. Sono speculari, insomma, a quelli visti<br />

<strong>per</strong> il salvataggio dei dati. Nella documentazione, comunque, trovate tutti i metodi disponibili.<br />

Abbiamo poi eseguito un controllo su tale valore: nel caso l’oggetto sia nullo (quindi non è stato<br />

letto niente), vuol dire che l’applicazione è avviata <strong>per</strong> la prima volta, quindi scriviamo un<br />

testo appropriato. In caso contrario, inseriamo nella label la data letta.<br />

Abbiamo concluso anche il salvataggio dei dati!<br />

<strong>Tutorial</strong> <strong>pratici</strong> <strong>per</strong> <strong>iPhone</strong> <strong>SDK</strong>! 160

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!