문제

UitableViewCell에있는 액세스에 어려움을 겪고 있습니다. 기본 .xib 파일에 배치했습니다.

이 레이블은 iBoutlet ServicesCell에 연결되어 있습니다.

테이블 뷰 셀 내부의 레이블은 Iboutlet Servicelabel을 통해 연결됩니다.

런타임에 나는 해당 레이블에 대한 텍스트를 얻지 못합니다.

다음은 내 샘플 코드입니다.

static NSString *ServiceIdentifier = @"ServiceIdentifier";

UITableViewCell *cell1 = [tableView dequeueReusableCellWithIdentifier:ServiceIdentifier];

if(cell1 == nil) {
    [[NSBundle mainBundle] loadNibNamed:@"servicesCell" owner:self options:nil];
    cell1 = servicesCell;
}

// label access
serviceLabel = (UILabel *)[cell1 viewWithTag:1];
serviceLabel.numberOfLines = 3;
serviceLabel.lineBreakMode = UILineBreakModeWordWrap;
[serviceLabel setTextAlignment:UITextAlignmentLeft];
[serviceLabel setText:@"Testing String"];

누구든지 어떤 아이디어도 도와주세요 ..

미리 감사합니다 ..

도움이 되었습니까?

해결책

당신은 당신의 셀이 당신의 기본 XIB 파일에 있다고 말하지만, 나는 그것을 받아들입니다. 셀은 실제로 "servicescell.xib"에 있습니다.

나는 당신이 시작했다고 가정합니다 "NIB 파일에서 사용자 정의 테이블 뷰 셀로드". 이 코드는 Apple의 예와 유사하므로 거기서 시작했다고 가정합니다. 이해하지 않고이 코드를 어딘가에서 복사 한 경우 먼저 그 문서를 읽으십시오.

디버거 에서이 코드를 걸어 가야하고 모든 것이 설정되어야한다고 생각하는 것으로 설정되어 있는지 확인해야합니다. "아무것도 발생하지 않는 것"의 가장 일반적인 원인은 NIL에 메시지를 보내고 있기 때문에 여기서 당신의 변수 중 하나가 실제로 nil입니다. 이 코드를 살펴보면 가장 가능성이 높은 범인은 실제로 IB에서 무언가를 연결하지 못하는 것입니다 (이것은 펜촉으로 작업 할 때 NIL 물체의 가장 일반적인 원인입니다. 진짜 그렇지 않으면) 또는 레이블에 예상되는 태그 1을 할당하지 않았습니다.

다른 팁

uitableviewcell을 자신의 펜촉에 넣으십시오.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top