用于将所有plist键值重置为其默认值的按钮

时间:2015-08-31 23:01:53

标签: ios objective-c xcode

我想创建一个按钮,将我的所有调整首选项包设置(滑块和开关)恢复为默认值。默认值在我的plist中指定。那么我需要读取我的plist来获取这些值,然后手动为每个键写入我的plist吗?在这种情况下,如果用户按下该按钮,滑块将立即返回其默认位置,或者是否必须重新启动应用程序。

谢谢。

inline float GetDefault(NSString *Kdefault)
{
  return [[[NSDictionary dictionaryWithContentsOfFile:PLIST_PATH] valueForKey:Kdefault] floatValue];
}

- (void)resetDefaults:(PSSpecifier *)specifier
{
   NSMutableDictionary *defaults = [NSMutableDictionary dictionaryWithContentsOfFile:PLIST_PATH];
[[NSUserDefaults standardUserDefaults] setValue:0 forKey:@"Kdefault"];


}

1 个答案:

答案 0 :(得分:0)

你不应该“为每一个键手动写入你的plist”。仅这一点就违背了你想要完成的所有事情,使得这些值不再是默认值,因为你过度编写了这些默认值。因此,你没有办法重置它们。只需将用户首选项保存到NSUserDefaultsNSUserDefaults),因为从技术上讲,这是其目的。如果您想将其设置回plist中指定的默认值,则可以根据需要进行设置