有检查BOOL值的问题

时间:2011-06-17 10:45:57

标签: iphone objective-c

显示错误

/Users/rajinair/Desktop/xml/apitest/Classes/apicontroller.m:在函数' - [apicontroller sendRequest]'中: /Users/rajinair/Desktop/xml/apitest/Classes/apicontroller.m:167:警告:未使用的变量'sysname' /Users/rajinair/Desktop/xml/apitest/Classes/apicontroller.m:在函数' - [apicontroller connectionDidFinishLoading:]'中: /Users/rajinair/Desktop/xml/apitest/Classes/apicontroller.m:242:警告:初始化从没有强制转换的指针生成整数

如何解决这个问题。

NSString *json_string = [[NSString alloc] initWithData:webData encoding:NSUTF8StringEncoding]; 

NSDictionary *result = [json_string JSONValue];
NSArray *values = [result objectForKey:@"Result"];
BOOL errortest = [values valueForKey:@"isError"];//initialization makes integer from pointer without a cast
if(errortest == FALSE)
{
    NSLog(@"Valid User");
}
else
{
    NSLog(@"Invalid User");
}

2 个答案:

答案 0 :(得分:4)

实际上[values valueForKey:@"isError"]返回布尔值的字符串表示形式(即, @“YES”)。您需要使用 NSString boolValue 方法将其转换为bool值。所以,

BOOL errortest = [[values valueForKey:@"isError"] boolValue];

答案 1 :(得分:1)

...试

BOOL errortest = [[values objectForKey:@"isError"] boolValue];