2012-09-03 3 views
1

섹션 헤더를 사용하여 적절한 섹션의 셀 옆에 작은 이미지 '플로팅'을 표시합니다. 섹션 헤더는 투명하며 이미지 뷰만 포함합니다. 이 솔루션의 초기 문제점은 섹션 헤더가 높이를 차지한다는 것입니다. 이상하게 보입니다. (각 섹션의 시작 부분에 불필요한 빈 공간이 있었으며 + tableview가 첫 번째 셀의 맨 위로 정렬되어야합니다. 섹션 시작 부분). 이 문제를 해결하기 위해 섹션 머리글 높이를 1px로 설정했습니다. 이미지는 여전히 제자리에 있었지만 헤더는 높이를 사용하지 않았고 모든 것이 훌륭하게 보였습니다.uitableview 맞춤 투명한 헤더

그러나 이제는 이미지 위에 UIButton을 추가해야하며 불행히도 헤더의 높이가 1px 일 때 작동하지 않습니다. 숨겨 지거나 덮여 있지 않으며 올바르게 그려 지지만 세트 선택기가 호출되지 않습니다. 높이를 설정하면 단추가 작동합니다.

요약하면 높이가 거의없는 섹션 머리글에서 작업 단추를 얻는 방법 또는 셀 높이가 항상 셀과 겹치는 섹션 머리글을 얻는 방법 (테이블 뷰가있을 때 공간을 사용하지 않음) 섹션 상단으로 스크롤)?

도움이 될 것입니다.

+0

섹션 헤더를 탭하면 항상 어떤 작업과 관련이 있습니까? –

+0

글쎄, 실제로 섹션 헤더의 버튼을 탭. –

+0

아, 전체 섹션 헤더가 아닐까요? –

답변

0

이 방법을 사용할 수있는 한 가지 방법은 표 위에 투명보기를 추가하는 것입니다. touchDown과 touchUp을 가로 챌 것입니다. 단추 중 하나를 초과했는지 여부를 계산할 수 있으며, 그렇다면 직접 단추로 보내거나 아니면 전달할 수 있습니다. 터치 이벤트가 발생하지 않는 이유는 아마도 터치가 헤더 프레임에 들어 가지 않기 때문일 것입니다.

0

David H suggestion도 초기 생각 이었지만보다 세련된 솔루션을 찾고 싶었습니다. 어쨌든이게 내가이 기능을 구현 한 방법입니다.

가능한 한 간단하게 코드를 유지했습니다 (더 최적화 된 방식으로 수행 할 수 있고 내 요구에 충분히 빨리 작동 할 것입니다). 각 이미지가 섹션에 추가되었으므로 (더 이상 오버레이 버튼이 필요 없음) 또한 섹션 번호가 키 인 사전에 추가됩니다. 터치 스크린이 내 테이블 뷰 중 하나에 해당하는 경우 내 마스크 레이어보기 (내 tableview 위에 추가 된 투명 마스크보기)를 만졌을 때 나는 CGRectContainsPoint으로 간단하게 체크합니다.