作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
经过大量搜索,我无法找到是否需要将字典对象传递给:
[NSUserDefaultsDidChangeNotification addObserver: forKeyPath: options: context:];
如果我想收到有关 userDefaults 中的单个更改的通知,应该在选项中提供什么。另外什么是键路径?
最佳答案
NSUserDefaultsDidChangeNotification
只是默认值更改时发出的通知。要监听它,您需要以下代码:
NSNotificationCenter *center = [NSNotificationCenter defaultCenter];
[center addObserver:self
selector:@selector(defaultsChanged:)
name:NSUserDefaultsDidChangeNotification
object:nil];
当通知被触发时,这将调用方法defaultsChanged:。您需要像这样实现此方法:
- (void)defaultsChanged:(NSNotification *)notification {
// Get the user defaults
NSUserDefaults *defaults = (NSUserDefaults *)[notification object];
// Do something with it
NSLog(@"%@", [defaults objectForKey:@"nameOfThingIAmInterestedIn"]);
}
关于iphone - 如何在 iPhone 上接收 UserDefaults DidChangeNotification,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3166563/
我是一名优秀的程序员,十分优秀!