最近遇到一个很奇怪的问题,通常情况下,重置NSUserDefaults使用的方法为:
[NSUserDefaults resetStandardUserDefaults];
但是实际使用中偶尔出现了重置不成功的情况,因此另辟蹊径,改为遍历UserDefaults的所有属性后逐条删除,代码如下:
NSDictionary *dic = [[NSUserDefaults standardUserDefaults]dictionaryRepresentation];
for (id key in [dic allKeys]) {
[[NSUserDefaults standardUserDefaults]removeObjectForKey:key];
}
[[NSUserDefaults standardUserDefaults]synchronize];
看起来没上面那种方便,但是胜在简单粗暴直接有效!
时间: 2024-10-12 11:46:30