我有一个flipView应用程序。在FlipView上,我保留了MainView的设置,并希望使用NSUserDefaults为MainView存储2个整数。我将在主应用程序中使用这些整数。是否有一些基本代码可以实现我尝试做的事情?
我希望将信息存储在FlipView上(如果已更改),并在MainView中首次运行程序时使用默认设置。
此外,我完成使用后,是否需要release
NSUserDefaults对象?
答案 0 :(得分:2)
查看以下代码,我已经包装并为您轻松搞定,
您可以使用以下代码: 在您要使用的任何代码中导入“Settings.h”,(可能是AppDelegate.m)。然后
设置值,使用
[Settings setSetting:@"AUTOLOGIN" value:@"1"];
[Settings setSetting:@"OTHERPROPERTY" value:@"100"];
并记住,仅存储指针数据类型,
获取设定值:
[Settings getSetting:@"AUTOLOGIN"];
下面有两个文件,Setting.h和Setting.m,make那些
头文件是:
#import <Foundation/Foundation.h>
@interface Settings : NSObject {
}
+(id) getSetting:(NSString *)key;
+(void) setSetting:(NSString *)key value:(id)v;
@end
- 并且实施文件是
#import "Settings.h"
@implementation GCCSettings
static NSMutableDictionary *settings = nil;
+(id) getSetting:(NSString *)key{
if(settings == nil){
settings = [[NSMutableDictionary alloc] initWithDictionary:
[[NSUserDefaults standardUserDefaults] dictionaryForKey:@"settings"]
];
}
return [settings objectForKey:key];
}
+(void) setSetting:(NSString *)key value:(id)v{
[settings setValue:v forKey:key];
[[NSUserDefaults standardUserDefaults] setObject:settings forKey:@"settings"];
[[NSUserDefaults standardUserDefaults] synchronize];
}
@end
最后不要释放你没有使用的任何对象(new,init,retain等)。
答案 1 :(得分:1)
您可以存储整数 [[NSUserDefaults standardUserDefaults] setInteger:1 forKey:@“theKey”]并用[[NSUserDefaults standardUserDefautls] integerForKey:@“theKey”]将其检索。这就是处理用户默认值的整数所需的全部内容。
您不释放NSUserDefaults对象。这是一个单身人士,所以只有一个会在你的应用程序的生命周期中创建。你也不拥有它,这意味着你不会释放它。