2013-12-07 3 views
-1

restkit을 사용하는 사람은 모두 부울을 서버로 다시 전달합니다. 문자열을 "true"또는 "false"로 되돌릴 수 있습니까?Restkit에 부울을 전달하는 방법

서버는 속성을 부울로 저장합니다.

+0

를 [다른 문제 논의 (http://stackoverflow.com/questions/20445375/collection-element-of 형식 -bool-not-an-objective-c-object)를 사용하려면 사전에서'@ (YES)'또는'@ (NO)'를 사용하십시오. 또는'isExclusive'와 같은'BOOL' 변수가 있으면'@ (isExclusive)'를 사용하십시오. – Rob

+0

1과 0을 넘지 않습니까? 서버가 1 또는 0을 기대하지 않습니다. – jdog

답변

1

RestKitNSJSONSerialization을 사용합니다. 부울 변수 (예 : isExclusive)가있는 경우 [NSNumber numberWithBool:isExclusive] 또는 부울 리터럴 인 @(isExclusive)을 사용하여 컬렉션 객체에 추가 할 수 있습니다. NSJSONSerializationtrue 또는 false 중 하나로 적절하게 나타냅니다.

BOOL   isExclusive = YES; 
NSDictionary *dictionary = @{@"exclusive" : @(isExclusive)}; 
NSData  *jsonData = [NSJSONSerialization dataWithJSONObject:dictionary options:0 error:&error]; 
NSString  *jsonString = [[NSString alloc] initWithData:jsonData encoding:NSUTF8StringEncoding]; 
NSLog(@"JSON = %@", jsonString); 

보고합니다 : 예를 들어

으로

 
JSON = {"exclusive":true} 
관련 문제