programing

[_NSCF Number length]: 인식할 수 없는 실렉터가 인스턴스 UITableView로 전송되었습니다.

codeshow 2023. 3. 28. 22:24
반응형

[_NSCF Number length]: 인식할 수 없는 실렉터가 인스턴스 UITableView로 전송되었습니다.

에러가 발생하고 있다.

[_NSCF Number length]: 인스턴스 0x15580c90 2014-02-18 15:10:49.490 CIB [1706:60b] * 예외 'NSInvalid Argument'로 인해 앱 종료예외', 이유: '-[_NSCF Number length]: 인스턴스 0x15580c90으로 전송된 인식되지 않는 실렉터* 첫 번째 슬로우 콜스택: (0x2da18e83 0x37d756c7 0x2da1c7b7 0x2da1b0af 0x2d969dc8 0x3b1e0138x3x3b1e)0x2d9e1c43 0x2d94c471 0x2d94c253 0x326862eb 0x30201845 0x4de1 0x3826eab7) libc++abi.dylib: NSException 유형을 제외하고 수집되지 않은 종료

여기에는 루프가 있습니다.Json의 어레이에서 내 모델 태스크리스트로 이동한 후 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];
    }

여기 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;}
cell.titleLabel.text = txn.funcCdDscp;
cell.totalCountLabel.text = txn.taskCount;

이것들 중 하나(어느 쪽인지는 모르겠지만, 제 추측으로는,taskCount)는 NS Number입니다.텍스트가 NSString을 받습니다.

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

또는

이것을 그대로 사용하세요.best solution

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

웹 서비스에서 JSON 데이터를 조작하는 경우 다음 사항이 도움이 되기를 바랍니다.

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

여기 그것은 기대하고 있다.NSString대신NSNumber그게 추락의 원인이야그럼 그걸 로 변환해 주세요.NSString해결되겠죠.

언급URL : https://stackoverflow.com/questions/21846792/nscfnumber-length-unrecognized-selector-sent-to-instance-uitableview

반응형