iPhone Xcode Settings.bundle Plist帮助

时间:2010-12-04 17:54:59

标签: iphone objective-c xcode iphone-sdk-4.1 settings.bundle

我按照教程:http://useyourloaf.com/blog/2010/5/18/adding-a-settings-bundle-to-an-iphone-app.html

“Shuffle Switch”(我刚刚根据教程创建的)不在设置应用程序中。每次我在交换机状态下执行NSLog时,它都会返回“(null)”。 “幻灯片切换”(以同样的方式创建)工作正常。

我的设置包Root.plist文件如下所示:(复制链接并粘贴到Web浏览器中) i.imgur.com/kb8DT.png

请在我需要创建和访问.plist文件中创建的切换开关时提供帮助。我是iPhone编程的新手。

以下是我用来设置用户偏好设置开关的代码:

// Set the application defaults
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
NSDictionary *appDefaults = [NSDictionary dictionaryWithObject:@"YES" forKey:@"ShuffleToggleKey"];
[defaults registerDefaults:appDefaults];
[defaults synchronize];

这是我用来获取用户首选项开关状态的代码:

NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
BOOL enabled = [defaults boolForKey:@"ShuffleToggleKey"];

1 个答案:

答案 0 :(得分:1)

看来,你正在放置字符串对象并尝试获取布尔值。 你应该或者拿出像

这样的字符串
NSString *enabledStr = [defaults stringForKey:@"ShuffleToggleKey"];
BOOL enabled = [enabledStr boolValue];

或者在第一个位置放置一个布尔值:

  [defaults setBool:YES forKey:@"ShuffleToggleKey"];

然后您可以将其检索为

BOOL enabled = [defaults boolForKey:@"ShuffleToggleKey"];