UITableViewCell은 init'ed 후에 UILabel을 하나의 서브 뷰로 "미리 빌드"되어 있습니다. 나는 을 정말로과 같은 레이블의 배경색을 변경하고 싶지만 색상을 변경하지 않아도 상관 없습니다. 문제의 코드는 다음과 같습니다.UITableViewCell에서 UILabel의 배경색 변경
UILabel* label = (UILabel*)[cell.contentView.subviews objectAtIndex:0];
label.textColor = [UIColor whiteColor];
label.backgroundColor = [UIColor darkGrayColor];
label.opaque = YES;
글쎄, 난 처음부터 물어 이유는 : 나는 내 자신의 서브 뷰를 생성하고 싶지 않아요 (그래, 난 그 게으른). 내 코드가 배경색을 변경한다는 점에서 내 코드가 효과가 있다고합니까? 당신은 어떻게 작동하는지에 대해 더 구체적으로 설명 할 수 있습니까? – rpj
나는 게으르다. 그러나 이것은 위험하다 ;-) 나는 당신의 코드를 호출 한 나의 셀의 init 메소드에 지연된 호출을 추가했다. 그것은 배경 색상 (그리고 텍스트 색상, 물론)을 변경했습니다. –