如何在NSUserDefaults中存储BOOL

时间:2015-03-16 10:38:12

标签: ios objective-c iphone xcode uiviewcontroller

view和viewcontroller是分开的。我已经尝试NSUserDefaults它无法使用。

[[NSUserDefaults standardUserDefaults] setValue:BOOLCondition forKey:@"YES"];
[[NSUserDefaults standardUserDefaults] synchronize];

它表示不允许使用arc

将bool转换为id

如何传递bool值

*****查看viewcontroller而不是viewcontroller到viewcontroller

2 个答案:

答案 0 :(得分:5)

使用以下代码在BOOL

中存储NSUserDefaults

BOOL BOOLCondition = YES;BOOL BOOLCondition = NO;

[[NSUserDefaults standardUserDefaults] setBool:BOOLCondition forKey:@"YES"];
[[NSUserDefaults standardUserDefaults] synchronize];

答案 1 :(得分:4)

我总是这样做来存储BOOL值,因为我更喜欢直接处理对象:

BOOL _myBool = TRUE; // or FALSE...
[[NSUserDefaults standardUserDefaults] setValue:@(_myBool) forKey:@"boolValue"];
[[NSUserDefaults standardUserDefaults] synchronize];

并恢复存储的值:

BOOL _boolValue = [[[NSUserDefaults standardUserDefaults] valueForKey:@"boolValue"] boolValue]; // will be FALSE if the value is `nil` for the key