1、概述緩存
不少iOS應用都支持偏好設置,好比保存用戶名、密碼、字體大小等設置,iOS提供了一套標準的解決方案來爲應用加入偏好設置功能。字體
每一個應用都有個NSUserDefaults實例,經過它來存取偏好設置。好比,保存用戶名、字體大小、是否自動登陸。內存
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];同步
[defaults setObject:@"itcast" forKey:@"username"];string
[defaults setFloat:18.0f forKey:@"text_size"];it
[defaults setBool:YES forKey:@"auto_login"];ast
[defaults synchronize];登錄
// 3.馬上同步,使內存中數據與偏好設置中數據同步,建議調用一下float
[defaults synchronize];程序
2、讀取上次保存的設置
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
NSString *username = [defaults stringForKey:@"username"];
float textSize = [defaults floatForKey:@"text_size"];
BOOL autoLogin = [defaults boolForKey:@"auto_login"];
注意:UserDefaults設置數據時,不是當即寫入,而是根據時間戳定時地把緩存中的數據寫入本地磁盤。因此調用了set方法以後數據有可能尚未寫入磁盤應用程序就終止了。出現以上問題,能夠經過調用synchornize方法強制寫入
[defaults synchornize];