2011-01-26 3 views
0

UITableViewCell의 사용자 정의 하위 클래스에 신비한 문제가 있습니다. 셀 하위 클래스는 UIControl 인스턴스의 상대적으로 복잡한 레이아웃을 수행하고 그 컨트롤의 레이아웃을 기반으로하는 높이를 ivar로 저장합니다. 나는 사용자 정의 도면을 수행하지 않고있다. (나는 drawRect:을 무시한다.)사용자 정의 UITableViewCell 상단에 신비한 둥근 선이 나타납니다.

무엇인가의 이유 때문에 높이에 관계없이 셀 상단에이 이상한 둥근 모서리 모양의 그림이 그려져 있습니다. 나는 셀의 프레임 그 자체 나 다른 것의 높이를 바꾸지 않을 것이다. 내 테이블 뷰 대리자에 그냥 tableView:heightForRowAtIndexPath:indexPath을 사용하고 있습니다. 셀에 대한 다른 모든 것들이 훌륭하게 렌더링됩니다. 단지이 이상한 부분 일뿐입니다.

이전에 이런 일이 생긴 사람이 있습니까? iOS 4.2를 사용하고 있습니다.

image of mysterious arc

답변

1

는 애플의 API 문서는 기본 구현은 아무것도하지 않는 말에도 불구하고 layoutSubviews 방법 '하위 클래스에 [super layoutSubviews]를 호출 할 필요가 밝혀졌습니다. 이렇게하면이 문제가 해결됩니다 (하위 뷰의 모든 자동 크기 조정 기능이 꺼지게됩니다).

+0

+1 알아두면 좋을 것. –

+1

'UIView'의 기본 구현은 아무 것도하지 않습니다. 'UITableViewCell'은 확실히 뭔가를합니다. –

관련 문제