iphone - 将 BOOL 值设置为 NSMutableDictionary

标签 iphone ios objective-c ios5

我想将 BOOL 值设置为 true false 格式的 NSMutableDictionary(它将用作 API 请求的 JSON 字典)。我尝试了以下两种方法。但这些不是 API 请求的正确格式(API 需要 BOOL 值作为 true/false 类型而不是 1/0)。

BOOL isDefault = YES;
[dicTemp setValue:[NSString stringWithFormat:@"%c", isDefault] forKey:@"is_default"];

//[dicTemp setValue:[NSNumber numberWithBool:isDefault] forKey:@"is_default"];

任何人都可以有ide

最佳答案

BOOL 可以包装在 NSNumber 中对象:

dicTemp[@"is_default"] = @YES;

(此代码使用新的 Objective-C Literals syntax )。

如果你是守旧的(这没什么不对),那么上面的语句就等同于:

[dicTemp setObject:[NSNumber numberWithBool:YES]
            forKey:@"is_default"];

稍后测试:

NSNumber *numObj = dicTemp[@"is_default"];
if ([numObj boolValue]) {
    // it was YES
}

关于iphone - 将 BOOL 值设置为 NSMutableDictionary,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18973948/

相关文章:

iphone - 核心数据轻量级迁移——不能合并模型

ios - 使用 IQDropDownTextField 时发送到实例的无法识别的选择器

iphone - 接受的方式让用户 "reset"应用程序设置(NSUserDefaults)?

ios - 来自一个来源的多个 View 和 UITables,如何填充它们?

iphone - Facebook SDK FBSession 无限循环和崩溃

php - 关于 Iphone 和网络服务器通信的多个问题

php - 如何通过 Swift 使用 multipart/form-date 将文件发送到服务器

ios - 在 XCTest 的 UI 测试中从 TextView 获取文本

objective-c - xcode4 分析显示一行我不确定如何修复

ios - Swift 3 URLSession 发送空请求