BOOL包装器?创建一个`BOOL`值的对象。(Objective-C)

27

如何在Objective-C中将BOOL包装为对象类型?

我想要将一个BOOL存储在NSTimeruserInfo对象中。如何进行包装?

1个回答

35
NSNumber *boolForUserInfo = @YES; // or [NSNumber numberWithBool:YES] the old way
[userInfo setObject:boolForUserInfo forKey:@"myBool"];

使用以下方法检索:

[[userInfo objectForKey:@"myBool"] boolValue];

据我所知,如果您要包装一个变量而不是字面值,那么您的“旧方法”是从BOOL创建NSNumber的最佳方法。 - JordanC
2
@JordanC 你可以使用字面量语法,例如 @(myScalarVar),将简单的 BOOL 或某些 NSInteger 转换为 NSNumber - Eimantas

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接