2009-09-26 30 views

Odpowiedz

57
[[NSUserDefaults standardUserDefaults] setInteger:HighScore forKey:@"HighScore"]; 

... aby ją odzyskać:

NSInteger highScore = [[NSUserDefaults standardUserDefaults] integerForKey:@"HighScore"]; 

Tłumaczy to bardzo prosty w documentation.

+9

Masz rację, oczywiście. Ale Googling (i znalezienie użytecznych rozwiązań dwuprzewodowych, takich jak twoje) jest DUŻO szybszy niż przekopywanie się przez dokumentację Apple'a. Można argumentować, że przez Googling jestem albo leniwy, albo wydajny ...! –

10

Mówiąc ogólniej, można zapisywać obiekty klasy Foundation w ustawieniach domyślnych użytkownika, np. , np.:

[[NSUserDefaults standardUserDefaults] setObject:[NSNumber numberWithInt:highScore] forKey:@"kHighScore"]; 

i

NSInteger highScore = [[[NSUserDefaults standardUserDefaults] objectForKey:@"kHighScore"] intValue]; 

Ale metoda wygoda jest tam za poświęcenie w NSInteger bezpośrednio.

Wolę używać bardziej agnostycznych -setObject: i -objectForKey:, ponieważ bardziej czysto oddziela typ obiektu od dostępu do słownika.

Powiązane problemy