有关字符串创建的参数太多

时间:2014-04-27 15:00:04

标签: ios objective-c json

我下载了一个JSON文件然后尝试使用下载的字典中的一个值创建一个字符串。

我使用的代码:

NSMutableDictionary *tempDict = [listaShowsFiltrada objectAtIndex:indexPath.row];
 NSLog(@"%@", tempDict);
cell.labelLugar.text = [tempDict objectForKey:@"local"]; //This is working

NSString *stringCidadeEstado = [[NSString alloc] initWithString:@"%@ - %@", [[tempDict objectForKey:@"cidade"] stringValue], [[tempDict objectForKey:@"estado"] stringValue]]; //This is not working

NSLog:

2014-04-27 11:57:46.645  {
    cidade = "S\U00e3o Paulo";
    "cod_agenda" = 15;
    data = "05/05/2014";
    estado = SP;
    "hora_show" = "22:00";
    local = "Teatro Renaissance";
}
2014-04-27 11:57:46.655  {
    cidade = "Belo Horizonte";
    "cod_agenda" = 16;
    data = "06/06/2014";
    estado = MG;
    "hora_show" = "22:00";
    local = "Teatro Sesi Minas";
}
2014-04-27 11:57:46.656 {
    cidade = Curitiba;
    "cod_agenda" = 14;
    data = "14/06/2014";
    estado = PR;
    "hora_show" = "22:00";
    local = "Teatro Regi Vogue";
}

JSON文件:

[{"cod_agenda":"15","local":"Teatro Renaissance","cidade":"S\u00e3o Paulo","estado":"SP","data":"05\/05\/2014","hora_show":"22:00"},{"cod_agenda":"16","local":"Teatro Sesi Minas","cidade":"Belo Horizonte","estado":"MG","data":"06\/06\/2014","hora_show":"22:00"},{"cod_agenda":"14","local":"Teatro Regi Vogue","cidade":"Curitiba","estado":"PR","data":"14\/06\/2014","hora_show":"22:00"}]

错误:

Too many arguments to method call, expected 1, have 3.

1 个答案:

答案 0 :(得分:4)

initWithString方法只接受一个参数,你想使用initWithFormat:

NSString *stringCidadeEstado = [[NSString alloc] initWithFormat:@"%@ - %@", [[tempDict objectForKey:@"cidade"] stringValue], [[tempDict objectForKey:@"estado"] stringValue]];