Pav*_*nen 1 xcode switch-statement nsuserdefaults ios
我有开关,我想检测是否有任何开关被改变位置,如果有变化我需要开始我的行动.
开关存储位置 NSUserDefaults
- (IBAction)saveSwitch:(id)sender
{
NSUserDefaults *defs1 = [NSUserDefaults standardUserDefaults];
[defs1 setBool: blackSwitch.on forKey: @"blackKey"];
NSUserDefaults *defs2 = [NSUserDefaults standardUserDefaults];
[defs2 setBool: greenSwitch.on forKey: @"greenKey"];
[[NSUserDefaults standardUserDefaults] synchronize];
}
Run Code Online (Sandbox Code Playgroud)
您可以在打电话时发布通知 synchronize
[[NSNotificationCenter defaultCenter] postNotificationName:@"MyAppSettingsChanged" object:self userInfo:nil];
Run Code Online (Sandbox Code Playgroud)
然后在你的其他课堂听取通知.
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(onAppSettingsChanged:) name:@"MyAppSettingsChanged" object:nil];
-(void) onAppSettingsChanged:(NSNotification)notification
{
// settings changed
}
Run Code Online (Sandbox Code Playgroud)
如果需要,可以NSDictionary在调用时传入userInfo postNotificationName,其中包含哪些设置已更改的信息.
| 归档时间: |
|
| 查看次数: |
3185 次 |
| 最近记录: |