ios json uitableview nsmutablearray

ios - [__NSCFNumber length]: selector no reconocido enviado a la instancia UITableView



json nsmutablearray (4)

Aquí se espera NSString lugar de NSNumber modo que esa es la razón por la que se bloquea. Por lo tanto, conviértalo a NSString y se resolverá.

estoy experimentando un error

[__NSCFNumber length]: selector no reconocido enviado a la instancia 0x15580c90 2014-02-18 15: 10: 49.490 CIB [1706: 60b] * Aplicación de terminación debido a la excepción no detectada ''NSInvalidArgumentException'', razón: ''- [__ NSCFNumber length]: no reconocido selector enviado * pila de llamadas a primera tirada de instancia 0x15580c90'' : (0x2da18e83 0x37d756c7 0x2da1c7b7 0x2da1b0af 0x2d969dc8 0x2e33b695 0x2e33b169 0x301ab2fd 0x1603ad 0x302cf315 0x302776cd 0x30276ef1 0x3019d353 0x2fe23943 0x2fe1f167 0x2fe1eff9 0x2fe1ea0d 0x2fe1e81f 0x2fe1854d 0x2d9e3f69 0x2d9e18f7 0x2d9e1c43 0x2d94c471 0x2d94c253 0x326862eb 0x30201845 0x113de1 0x3826eab7) libc ++ abi.dylib: termina con no detectada excepción de tipo NSException

Tengo bucle aquí. de la matriz en Json a mi lista de tareas modelo luego se almacena en NSMutableArray _tasklist

NSArray *taskJson = [json objectForKey:@"fOTaskListModelWss"]; for (NSDictionary *dictCQ in taskJson) { NSLog(@"TASKLIST: %@", [dictCQ objectForKey:@"foTaskListModelWs"]); NSDictionary *datadic = [dictCQ objectForKey:@"foTaskListModelWs"]; TaskList *task = [[TaskList alloc]init]; [task setTaskCount:datadic[@"count"]]; [task setFuncCd:datadic[@"funcCd"]]; [task setFuncCdDscp:datadic[@"funcCdDscp"]]; [task setRequestStatus:datadic[@"requestStatus"]]; [task setRole:datadic[@"role"]]; [_taskList addObject:task]; }

entonces aquí está mi código en cellForRowAtRowPathIndex

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{ static NSString * simpleTableIdentifier = @"MenuTableViewCell"; MenuTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:simpleTableIdentifier]; if (cell == nil) { NSArray *nib = [[NSBundle mainBundle] loadNibNamed:@"MenuTableViewCell" owner:self options:nil]; cell = [nib objectAtIndex:0]; } TaskList *txn = [_taskList objectAtIndex:indexPath.row]; cell.titleLabel.text = txn.funcCdDscp; cell.totalCountLabel.text = txn.taskCount; return cell;}


Espero que lo siguiente le ayude si está manipulando datos JSON desde el servicio web

cell.textLabel.text=[NSString stringWithFormat:@"%@",[[JsonDictionaryObject objectForKey:@"Respected_Key_Name"]objectAtIndex:indexPath.row]];


cell.titleLabel.text = txn.funcCdDscp; cell.totalCountLabel.text = [txn.taskCount stringValue];

O

Usa esto ya que esta es la best solution

cell.totalCountLabel.text = [NSString stringWithFormat:@"%@",txn.taskCount];


cell.titleLabel.text = txn.funcCdDscp; cell.totalCountLabel.text = txn.taskCount;

Uno de estos (no estoy seguro de cuál, pero mi conjetura sería taskCount ) es un NSNumber. El texto toma un NSString.