好吧,我有点困惑。 这可能只是一件小事。
我有一个看起来像这样的函数:
- (void)getNumbersForNews:(BOOL)news andMails:(BOOL)mails {
NSMutableDictionary *parameters = [[NSMutableDictionary alloc] init];
[parameters setValue:news forKey:@"getNews"];
[parameters setValue:mails forKey:@"getMails"];...}
无论我使用 setValue:forKey:
还是 setObject:ForKey:
都没有关系,我总是收到警告:
"Passing argument 1 of set... makes pointer from integer without a cast"...
我到底如何在字典中插入一个 boolean 值?
最佳答案
NSDictionary
中的值必须是对象。要解决此问题,请将 boolean 值包装在 NSNumber
对象中:
[parameters setValue:[NSNumber numberWithBool:news] forKey:@"news"];
[parameters setValue:[NSNumber numberWithBool:mails] forKey:@"mails"];
关于插入 BOOL 的 Objective-C 字典,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2108042/