문제

uitableviewcell을 상속하는 클래스 A가 있습니다 (테이블 셀을 사용자 정의하기 위해). 멤버는 X라고 말합니다.

이제 cellforsionAtIndexPath 메소드에서 axText = "일부 텍스트"와 같은 값을 설정하려면 "비 클래스 유형 UableViewCell의 셀의 멤버 X에 대한 컴파일러 오류"오류가 발생합니다.

이 문제를 해결할 수있는 방법을 알려주시겠습니까?

감사.

도움이 되었습니까?

해결책

먼저 재산이 올바르게 정의되어 있는지 확인하십시오.

@interface A : UITableViewCell {
  UILabel *x;
}

@property (nonatomic, retain) IBOutlet UILabel *x;

@end

그런 다음 테이블 뷰 데이터 소스에 AH를 포함시켜 AH를 입력하여 A 형을 입력하는지 확인하십시오.

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
  static NSString *cellIdentifier = @"cell";
  A *a = (A *)[tableView dequeueReusableCellWithIdentifier:cellIdentifier];
  if (a == nil) {
    a = [[A alloc] initWithFrame:CGRectZero reuseIdentifier:cellIdentifier];
  }
  a.x.text = @"some text";
  return a;
}

다른 팁

서브 클래스에 x를 속성으로 추가하십시오.

@interface ACell : UITableViewCell {
      UILabel *X;
}

@property (readonly, nonatomic) UILabel* X;

사용해보십시오 :

[[a x] setText:@"your text];

그리고 무슨 일이 일어나는지보십시오.

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