2012-02-09 3 views
1

섹션 헤더에 날짜가있는 UITableView가 있습니다. 사용자가 '오늘'버튼을 누르면 섹션 헤더로 스크롤하고 싶습니다. 섹션 제목의 텍스트를 기반으로 섹션으로 스크롤하려면 어떻게해야합니까?iOS : TableView로 스크롤

+0

참조 http://stackoverflow.com/questions/4597839/iphone-how-to-scroll-to-the-1st-cell-of-the-2nd-section-letting-the-header-of –

+0

@ConradShultz 날짜가 항상 같은 섹션에있는 경우 작동합니다. – Bot

+0

데이터 모델을 사용하여 날짜 섹션을 찾아야합니다. 이를 수행하는 방법은 모델/데이터 소스의 구조에 따라 다릅니다. 나는 당신이 단지 스크롤하는 부분에 대해 묻고 있다고 생각했습니다. 섹션 색인을 찾는 방법을 알아야합니까? –

답변

0

우리는 당신이 섹션 인덱스를 찾을 수 있습니다. 그것이 핵심 단계입니다.

일단 가지고 있으면 UITableView의 -rectForHeaderInSection : 메서드를 사용하여 섹션의 머리글에 해당하는 CGRect를 얻을 수 있습니다. 그런 다음 @oriolpons 노트와 같이, 스크롤 스크롤 뷰의 -scrollRectToVisible : 메서드를 사용하여 테이블을 결정된 CGRect로 실제로 스크롤 할 수 있습니다.

0

당신은 사용해야합니다 :

tableView scrollRectToVisible: 

이 게시물을 읽어보십시오, 나는 당신을 도울 것입니다 생각합니다. 당신이 당신의 데이터 모델을 설명하면

How do I scroll a UITableView to a section that contains no rows?

+0

그 정도는 있지만 오늘 날짜가 포함 된 섹션의 위치를 ​​찾는 데는 도움이되지 않습니다. – Bot

+0

음, "나쁜"해결책은 프로그래밍 방식으로 수행 할 것입니다 ... 모든 섹션을 스크롤하려는 섹션과 비교하고 모든 셀의 높이를 추가하여 스크롤하려는 위치를 계산하십시오 ... 그러나 나는 그게 최선의 해결책이라고 생각하지 않습니다. – oriolpons

+0

@oriolpons 그 접근법은 예를 들어 헤더 높이와 패딩을 고려하지 않았습니다. "그 방법이있다." –

관련 문제