【问题标题】:Edit my application settings.bundle's settings from iPhone app从 iPhone 应用程序编辑我的应用程序 settings.bundle 的设置
【发布时间】:2012-11-17 07:56:22
【问题描述】:

我在我的 iPhone 应用项目中创建了一个 setting.bundle。它工作正常。应用程序设置在 iPhone 默认设置应用程序中可见,带有应用程序图标和名称。

我还在我的应用程序中创建了一个 UIViewController,其中包含与 setting.bundle 的 Root.plist 中相同的设置功能。

意味着我在 iPhone 默认设置应用程序和我的应用程序设置视图控制器中都有相同的设置视图。

当我在我的应用程序的 iPhone 默认设置中应用一些更改时,它会从 NSNotification 对象反映我的应用程序中的更改。

但是当我在我的应用程序设置视图控制器中进行一些更改时会出现问题,我无法在 iPhone 默认设置应用程序中应用这些更改。我希望两个设置页面同步工作。两个设置页面都需要相互反映它们的变化。

我发现的一个逻辑是: 需要在我的应用程序中修改 settings.bundle 的 Root.plist,与应用程序设置视图控制器并行。但是如何修改呢,如果修改成功,会不会影响我的iPhone默认设置应用的设置?

第二:是否可以将任何通知从应用程序发送到 iPhone 默认设置应用程序以更改其值?

帮我解决这个问题。

如果我无法向您解释我的问题,请询问我。我给你简单解释一下。

提前致谢。

【问题讨论】:

标签: objective-c ios settings.bundle


【解决方案1】:

1) 您可以通过编程方式更改设置应用程序的值。

您需要调用registerDefaults 以编程方式更改设置值,例如:

[defaults setObject:@"YES" forKey:@"Toggle];

存储一个设置,然后[defaults synchronize]; 用于保存设置。

这里Toggle 是给任何设置组件的标识符。

2) 将您的班级添加为NSUserDefaultsDidChangeNotification 的观察者,例如:

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(changed) name:NSUserDefaultsDidChangeNotification object:nil];

- (void) changed
{
  //change the app viewcontroller settings here
}

并在上述方法中更改 viewControllers 设置。

【讨论】:

  • 感谢您的回答。 [[NSUserDefaults standardUserDefaults] setObject:appDelegate.objSettings.strLang forKey:@"PSMultiValueSpecifier"]; [[NSUserDefaults standardUserDefaults] setObject:[NSString stringWithFormat:@"%d",appDelegate.objSettings.intervalIndex] forKey:@"PSMultiValueSpecifier"]; [[NSUserDefaults standardUserDefaults] setObject:[NSString stringWithFormat:@"%d",appDelegate.objSettings.isLetterSoundOn] forKey:@"PSToggleSwitchSpecifier"]; [[NSUserDefaults standardUserDefaults] 同步];我这样做是为了改变价值。但它不起作用。
  • 你好 Miduhn,请阅读上面的帖子。我已经输入了 [[NSUserDefaults standardUserDefaults] setObject:appDelegate.objSettings.strLang forKey:@"PSMultiValueSpecifier"];保存价值,但它不起作用。还有一个问题,如果我们有多个拨动开关怎么办?提前谢谢你。
  • @NileshTripathi: PSMultiValueSpecifier 不是关键。您将为每个设置对象添加一个条目作为标识符。这是键,不是设置键。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-05-16
  • 1970-01-01
  • 2011-07-06
  • 2011-09-23
  • 1970-01-01
相关资源
最近更新 更多