Задайте значение BOOL для NSMutableDictionary

Я хочу установить значение BOOL как true false в NSMutableDictionary (который будет использоваться в качестве JSON Dictionary API API). Я пробовал использовать оба метода. Но это НЕ правильный формат, запрошенный 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"];

У кого-нибудь есть ides

Ответы

Ответ 1

BOOL можно обернуть в объект NSNumber:

dicTemp[@"is_default"] = @YES;

(Этот код использует новый Objective-C Литерал синтаксис).

Если вы старомодны (ничего плохого в этом), то приведенный выше оператор будет таким же, как:

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

Чтобы проверить позже:

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