2013-07-14 2 views
0

UITableViewCell에 다음과 같이 버튼을 넣고 싶습니다. 버튼을 누르면 셀의 전체 내용이 표시되고 그렇지 않으면 내용의 일부만 표시됩니다. 전체 내용이 공개되면 UITableViewCell의 높이가 높아집니다. 기본적으로 iOS의 앱 업데이트 스타일처럼 보일 것입니다. 어떻게해야합니까?UITableViewCell의 크기를 조절하는 중 UITableViewCell 크기 조정

나는

[tableView beginUpdates]; 
[tableView endUpdates]; 

을 시도했지만 이것은 단지 셀의 크기를 변경하고 셀의 중간에 내용을 넣습니다. 셀의 원래 부분을 변경하지 않고 셀의 높이가 커지면 더 많은 내용을 표시하기를 원합니다. 사용자 지정있는 UITableViewCell에 대한

내 init 메소드 :

- (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier 
{ 
    self = [super initWithStyle:style reuseIdentifier:reuseIdentifier]; 
    if (self) { 
     self.backgroundColor = [UIColor clearColor]; 

     self.opaque = NO; 
     self.textLabel.autoresizingMask = UIViewAutoresizingFlexibleBottomMargin; 
     self.detailTextLabel.autoresizingMask = UIViewAutoresizingFlexibleBottomMargin; 
    } 
    return self; 
} 

답변

0

이 원하는 효과를 달성하기 위해있는 UITableViewCell의 파단의 autoResizingMask를 설정하십시오.

UIViewAutoresizingFlexibleBottomMargin은 상단에 고정 된보기를 유지합니다.

UIViewAutoresizingFlexibleTopMargin은 하단을 고정 된 상태로 유지합니다.

UIViewAutoresizingNone은 늘리지 않고 가운데에 유지합니다.

UIViewAutoresizingFlexibleHeight 셀의 높이가 변경되면보기가 늘어나거나 짧아집니다.

각 하위보기에 대해 어떻게 동작시키고 그에 따라 값을 설정 할지를 결정하십시오.

+0

나는 이것을 세포의 init 메소드에 넣었으므로 아무런 효과가 없다. – newguy

+0

질문을 편집하여 코드를 게시하십시오. – jaredsinclair

1

테이블 뷰 셀의 높이를 변경하려면 테이블 뷰 셀을 변경하는 것뿐만 아니라 테이블 뷰가 테이블 뷰 셀에 할당하는 공간도 변경해야합니다. tableView : heightForRowAtIndexPath :에서 원하는 크기를 반환하고 해당 행을 다시로드하십시오 (예 : reloadRowsAtIndexPaths : withRowAnimation을 통해 :).

관련 문제