如何将整数值保存到NSuserDefault像sqlite?

我想在NSUserDefault中保存和检索值。 我正在保存和检索价值成功。 但是当我去cak主页,并再次进来我的课价值不存储和所有的过程再次完成。 它不记得旧的价值。

我正在这样做 –

-(void)ViewDidLoad{ A = 0; // int A; defone in .h [self calling_Once]; } -(void)calling_Once{ NSLog(@"A is: %d",A); // A is always zero when I leave this class and return Back to this class. This is my only problem. I want A=1; when I go back And return to this class but NSInteger B = [[NSUserDefaults standardUserDefaults] integerForKey:@"save_Interger_Value_For_Formula_One"]; //is not able to remeber value. It gives A=0; B =0; When I come back to this class, I want It should return A=1; B=1; and remember old value like sqlite when I return to this class. if (A==0) { [self refreshButton]; NSLog(@"Before Increment A is: %d",A); A++; NSLog(@"After Increment A is: %d",A); [[NSUserDefaults standardUserDefaults] setInteger:A forKey:@"save_Interger_Value_For_Formula_One"]; } NSInteger B = [[NSUserDefaults standardUserDefaults] integerForKey:@"save_Interger_Value_For_Formula_One"]; B = A; NSLog(@" B is: %d",B); B = A; NSLog(@" A is: %d",A); } 

任何想法或build议将非常受欢迎。

尝试像这样实施..确保它会帮助…

 @implementation ClassA - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view, typically from a nib. [[NSUserDefaults standardUserDefaults]setInteger:100 forKey:@"save_Interger_Value_For_Formula_One"]; [[NSUserDefaults standardUserDefaults] synchronize]; } @end @implementation ClassB - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view, typically from a nib. int B = [[[NSUserDefaults standardUserDefaults] integerForKey:@"save_Interger_Value_For_Formula_One"] integerValue]; NSLog(@"Interger Value %d",b); } 

保存一个整数;

 [[NSUserDefaults standardUserDefaults] setInteger:number forKey:@"unique_name"]; [[NSUserDefaults standardUserDefaults] synchronize]; 

检索它;

 NSInteger x = [[NSUserDefaults standardUserDefaults] integerForKey:@"unique_name"]; 

祝你好运!

 NSUserDefaults * def=[NSUserDefaults standardUserDefaults]; [def setInteger:yourvalue forKey:@"YourKey"]; [def synchronize]; 

试试这个代码….

插入值后,只需synchronize您的NSUserDefaults

 [[NSUserDefaults standardUserDefaults] synchronize]; 

你可以按照这个答案如何删除NSUserDefaults中的用户默认值?

在你的代码最初你将0设置为A,试试这个

 -(void)ViewDidLoad { A = [[NSUserDefaults standardUserDefaults] integerForKey:@"save_Interger_Value_For_Formula_One"]; [self calling_Once]; }