一旦我更改了设置捆绑包中的设置,我的应用程序可以同时获得更改



我知道当我的应用进入前景时,我可以同步nsuserdefaults。但是它无法满足我的要求,我希望在设置捆绑包中更改设置,即使在后台运行,我的应用程序的卷都可以同时更改。

我认为,您不能当应用在后台运行时(甚至手动)!

但是,当应用使用 NSUserDefaultsDidChangeNotification

时,您可以检测到卷设置的更改

示例:

-(void)viewDidAppear:(BOOL)animated{
        [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(defaultsSettingsChanged) name:NSUserDefaultsDidChangeNotification object:nil];    
  }
- (void)viewDidDisappear:(BOOL)animated{
    [[NSNotificationCenter defaultCenter] removeObserver:self];
}
-(void)defaultsSettingsChanged{
    NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
    if([[defaults stringForKey:@"speech"] isEqualToString:@"0"])
    {
        speech.hidden = YES;
    }
} 

相关内容

  • 没有找到相关文章

最新更新