neh*_*eha 23 iphone nsuserdefaults
经过大量的搜索后,我无法找到你需要将字典对象传递给:
[NSUserDefaultsDidChangeNotification addObserver: forKeyPath: options: context:];
Run Code Online (Sandbox Code Playgroud)
如果我想在userDefaults中进行一次更改,我应该在选项中提供什么.还有什么是keypath?
Thanx提前.
dea*_*rne 66
NSUserDefaultsDidChangeNotification
只是在更改默认值时发出的通知.要听取它,你需要这个代码:
NSNotificationCenter *center = [NSNotificationCenter defaultCenter];
[center addObserver:self
selector:@selector(defaultsChanged:)
name:NSUserDefaultsDidChangeNotification
object:nil];
Run Code Online (Sandbox Code Playgroud)
这将调用方法defaultsChanged:触发通知时.您需要像这样实现此方法:
- (void)defaultsChanged:(NSNotification *)notification {
// Get the user defaults
NSUserDefaults *defaults = (NSUserDefaults *)[notification object];
// Do something with it
NSLog(@"%@", [defaults objectForKey:@"nameOfThingIAmInterestedIn"]);
}
Run Code Online (Sandbox Code Playgroud)