在我的应用程序中,我有一些颜色设置、字体设置和一个包含应用程序特定对象的字典(这些对象是具有属性的类,它们是应用程序私有的)。颜色设置和字体设置是应用程序的公共设置。我想将它们保存到NSUserDefaults但它会正确显示任何字体或颜色,所以我使用这行代码保存它们
// reading the value
NSData *foregroundcolorData = [[NSUserDefaults standardUserDefaults] objectForKey:@"foregroundcolor"];
UIColor *foregndcolor = [NSKeyedUnarchiver unarchiveObjectWithData:foregroundcolorData];
// setting the default values
NSData *foregndcolorData = [NSKeyedArchiver archivedDataWithRootObject:[UIColor blackColor]];
[[NSUserDefaults standardUserDefaults] setObject:foregndcolorData forKey:@"foregroundcolor"];
// saving the changes, by putting everything in a dictionary called "preferences"
[[NSUserDefaults standardUserDefaults] registerDefaults:preferences];
[[NSUserDefaults standardUserDefaults] synchronize];
我决定将所有设置都放在应用程序 UI 中。为了使上面的代码能够工作,我需要向应用程序项目中添加一个“设置包”文件。这会导致应用程序在设备/系统设置面板中放置一个条目。它是空的,因为我没有在设置包文件中设置任何应用程序配置详细信息。
我怎样才能解决这个问题?