2011-10-15 4 views
0

Je suis nouveau dans la programmation iphone. veuillez m'expliquer ce code. et c'est l'utilisation de standardUserDefaults? comment ce code va fonctionner?à quoi sert standardUserDefaults?

-(void)load 
    { 
DLog("Load Configuration"); 

NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; 

bool savedDefaults = [defaults boolForKey:kKeySavedDefaults]; 
if (savedDefaults) 
{ 
    columns = [defaults integerForKey:kKeyColumns]; 
    if (columns == 0) columns = kColumnsDefault; 

    rows = [defaults integerForKey:kKeyRows]; 
    if (rows == 0) rows = kRowsDefault; 

    photoType = [defaults integerForKey:kKeylastPhotoType]; 
    photoEnabled = [defaults boolForKey:kKeyPhotoEnabled]; 
    numbersEnabled = [defaults boolForKey:kKeyNumbersEnabled]; 
    soundEnabled = [defaults boolForKey:kKeySoundEnabled]; 
} 
else 
{ 
    columns = kColumnsDefault; 
    rows = kRowsDefault; 
    photoType = klastPhotoTypeDefault; 
    photoEnabled = kPhotoEnabledDefault; 
    numbersEnabled = kNumbersEnabledDefault; 
    soundEnabled = kSoundEnabledDefault; 
} 
} 
-(void)save 
    { 
    DLog("Save Configuration"); 
    BOOL restart = NO; 

    NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; 

    if ([defaults integerForKey:kKeyColumns] != columns) { restart = YES; } 
    if ([defaults integerForKey:kKeyRows] != rows) { restart = YES; } 

    [defaults setBool:YES forKey:kKeySavedDefaults]; 
    [defaults setInteger:columns forKey:kKeyColumns]; 
    [defaults setInteger:rows forKey:kKeyRows]; 
    [defaults setInteger:photoType forKey:kKeylastPhotoType]; 
    [defaults setBool:photoEnabled forKey:kKeyPhotoEnabled]; 
    [defaults setBool:numbersEnabled forKey:kKeyNumbersEnabled]; 
    [defaults setBool:soundEnabled forKey:kKeySoundEnabled]; 
    [defaults synchronize]; 

    [board configChanged:restart]; 
} 

Répondre

3

réglages par défaut sont utilisés pour stocker des paramètres peu de configuration.

De l'documentation:

La classe NSUserDefaults fournit une interface de programmation pour interagir avec le système de valeurs par défaut. Le système par défaut permet à une application de personnaliser son comportement pour qu'il corresponde aux préférences d'un utilisateur. Par exemple, vous pouvez permettre aux utilisateurs de déterminer les unités de mesurant l'affichage de votre application ou la fréquence à laquelle les documents sont automatiquement enregistrés en . Les applications enregistrent ces préférences en attribuant des valeurs à un ensemble de paramètres dans la base de données par défaut d'un utilisateur. Les paramètres sont appelés paramètres par défaut car ils sont généralement utilisés pour déterminer l'état par défaut d'une application au démarrage ou la façon dont elle agit par défaut.

0

Si vous souhaitez stocker une petite quantité de données comme nom d'utilisateur, mot de passe ...... en utilisant ce concept, vous pouvez stocker les valeurs

+0

Mon mot de passe dans une plist simple et ouverte ?! J'espère juste que je n'utilise pas l'une de vos applications oO – JustSid

+1

Mieux utiliser le porte-clés pour les mots de passe. – jcm