【发布时间】:2015-06-04 20:14:08
【问题描述】:
我想在 KeychainItemWrapper 中存储 bool 值,如何存储?
我试过这段代码,但它给了我错误。
[keychain setObject:YES forKey:(__bridge BOOL)kSecAttrIsInvisible];
【问题讨论】:
-
你遇到了什么错误?
标签: ios boolean keychainitemwrapper
我想在 KeychainItemWrapper 中存储 bool 值,如何存储?
我试过这段代码,但它给了我错误。
[keychain setObject:YES forKey:(__bridge BOOL)kSecAttrIsInvisible];
【问题讨论】:
标签: ios boolean keychainitemwrapper
你也可以像这样使用速记
[keychain setObject:@(YES) forKey:(__bridge BOOL)kSecAttrIsInvisible];
【讨论】:
BOOL 是基本类型,setObject:forKey: 仅排除派生自 NSObject 的类。
所以使用NSNumber它有一个特殊的方法+ numberWithBool::
[keychain setObject:[NSNumber numberWithBool:YES] forKey:@"someKey"];
如果你需要再次布尔:
NSNumber *value = [keychain objectForKey:@"someKey"];
BOOL boolValue = [value boolValue];
【讨论】: