0

当我在我的应用程序中更改和同步值时,它们会被保存,但更改不会出现在设置应用程序中。有没有办法让它们同步,同时保持在应用程序内进行更改的能力?这是我的代码:

//I'm registering the defaults from the Settings bundle I created using David Keegan's class inside my application delegate
+ (void)initialize{
    if([self class] == [VirtualVeloAppDelegate class]){
        [InAppSettings registerDefaults];
    }
}

//I'm accessing the values like so
NSUserDefaults *ud = [NSUserDefaults standardUserDefaults];
[ud boolForKey:@"_someKey"]

//I'm setting the values like so
[[NSUserDefaults standardUserDefaults] setBool:switch.isOn forKey:@"_someKey"];

//After I'm done I sync
[ud synchronize];

这些值在我的 iPad 和 iPhone 应用程序中被准确地保存和调用。但是,他们不会更新“设置”应用。

我认为我没有找到明确的解释这一事实可能表明 Settings.bundle 参数只能在“设置”应用程序中修改。

4

2 回答 2

0

如果您从应用程序更新,通常应该更新设置。检查您是否在“设置”应用中进行了修改,是否在您的应用中获得了修改后的值?检查您是否正确注册了默认值。正如你所说的 iPad,我猜你必须使用 3.2.x 测试版。检查测试版是否没有问题。

于 2010-03-26T06:55:42.370 回答
0

尽管我在我的应用程序中使用了 Keegan3d 的 InAppSettings 代码并且它不起作用,但我使用了该项目的全新下载,没有进行任何修改并且它起作用了。因此,如果正确实施,该项目的代码将有效。我不确定我哪里出错了。

于 2010-03-26T04:31:55.607 回答