2009-03-16 2 views
3

높이와 텍스트가 다른 5 개의 섹션에 걸쳐 5 개의 다른 셀이 테이블에 있습니다. 재사용 식별자 하나 또는 다섯 개가 있어야합니까? 사용자 지정 셀을 사용하고 있습니다.UITableViewCell 가변 높이 셀을 가진 재사용 식별자

Apple 문서는 "동일한 일반"구성을 갖는 셀과의 재사용에 대해 설명합니다. 서로 다른 높이가 캐싱과 재사용 관점에서 각각 다른가? 다른 글꼴을 사용할 수 있지만 셀 사이의 다른 것들은 동일합니다. 색상 등

이 표를 팝업하고 새 표 셀을 다시 누르면 텍스트 내용의 양에 따라 높이가 달라집니다 새로운 행 선택에서.

내 장치가 이미 앱을 실행하는 동안 뜨거워지고있는 것처럼 보였으므로이 작업을 효율적으로 수행하기를 원합니다. 새로운 데이터로 테이블을 다시로드 할 때뿐만 아니라 테이블 내에서 캐시와 셀을 재사용하고 싶습니다.

몇 가지 제안을 부탁드립니다. 나는 44 픽셀 높이의 하나 개의 셀을 상상할 수 없다고

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath 

:

답변

2

당신은 하나의 재사용 식별자를 가질 수 있지만, 당신은 UITableViewDelegate 메서드를 구현해야합니다 높이를 변경하려면 다른 하나는 70 픽셀 높이의 "동일한 일반"구성입니다. 높이가 다른 경우 내용 차이가있을 수 있으며 에 다른 재사용 식별자가 필요합니다.

+0

나는 이것을하려고하고 있는데, 유일한 차이점은 다른 셀보다 더 큰 이미지를 가지고 있기 때문에 같은 높이의 재사용 식별자에 대해 가변 높이가 작동하는 경우입니다. – Kevlar

+2

* 높이가 다른 경우 내용이 다르기 때문에 다른 재사용 식별자가 필요합니다. * 실제로 그렇게 많이는 아닙니다. 메모리 오버 헤드는 레이블, 텍스트 뷰 및 버튼과 같은 객체를 만들고 파괴해야하기 때문에 발생합니다. 크기를 바꾸지 만 동일한 일반 레이아웃 (예 : 동일한 객체)을 유지하는 경우 셀을 다시 사용하는 것이 좋으며 잘 작동해야합니다. –

관련 문제