2010-08-17 14 views
1

J'essaie d'extraire une valeur NSUserDefaults d'un fichier Settings.bundle dans mon application. Lorsque je charge le NSUserDefaults au chargement de l'application, cependant, un NSLog révèle que ma valeur BOOL renvoie "(null)" et ma valeur de chaîne renvoie le nombre 39540360. La chose étrange est que la documentation sur NSUserDefaults indique spécifiquement queNSUserDefaults BOOL return (null)

"Si une valeur booléenne est associée à defaultName dans les valeurs par défaut de l'utilisateur, cette valeur est retournée.

Donc, même si le Settings.bundle n'est pas connecté (ce que je crois être le cas, de toute façon) il devrait retourner NON, non? Quoi qu'il en soit, ma deuxième partie à cette question est de savoir comment quelqu'un pourrait appeler (null) comme if (maxCountEnabled == (null)){ car aucune méthode nil, NULL, ou NSNull travaillé.

+0

S'il vous plaît montrer votre code. – kennytm

Répondre

1

La documentation est correcte, si vous créez un nouveau projet vide et mettez ce qui suit dans le délégué applicationDidFinishLaunching

NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; 

    BOOL tst = [defaults boolForKey:@"missingKey"]; 

La valeur de TST sera NO

Laissez-moi savoir si vous faites quelque chose