292 votes

Compensation NSUserDefaults

J’utilise `` pour stocker des paramètres d’application. Il s’agit de valeurs de chaîne d’environ une douzaine. Est-il possible de supprimer ces valeurs en permanence au lieu de simplement leur mise en valeur par défaut ?

522voto

Christopher Rogers Points 2807

Vous pouvez supprimer le domaine persistant de l’application comme suit :

Ceci est similaire à la réponse de @samvermette, mais est un peu plus propre de l’OMI.

103voto

samvermette Points 20225

Copiez le code suivant réinitialise les valeurs par défaut pour le domaine de l’enregistrement :

En d’autres termes, il `` pour chaque clé unique vous jamais enregistrée dans cette app.

Crédits à Ken Thomases sur ce Forums de développeurs Apple fil.

97voto

sbooth Points 9275

Avez-vous essayé d'utiliser - removeObjectForKey ?

  [[NSUserDefaults standardUserDefaults] removeObjectForKey:@"defunctPreference"];
 

29voto

Roger Sanoli Points 343

Si vous en avez besoin pendant le développement, vous pouvez également réinitialiser votre simulateur, en supprimant tous les NSUserDefaults .

iOS Simulator -> Réinitialiser le contenu et les paramètres ...

Gardez à l'esprit qu'il va également supprimer toutes les applications et les fichiers sur le simulateur.

15voto

folse Points 541
NSDictionary *defaultsDictionary = [[NSUserDefaults standardUserDefaults] dictionaryRepresentation];
for (NSString *key in [defaultsDictionary allKeys]) {
                    [[NSUserDefaults standardUserDefaults] removeObjectForKey:key];
}

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X