사용자 정의 셀이있는 UITableView가 있습니다. 셀의 높이는 항상 200입니다. 첫 번째 셀의 스크롤을 움직이기 원합니다. 이것은 scrollToRowAtIndexPath
을 사용하여 작동합니다. 그러나 행이 뷰의 맨 위에 표시되는 반면 표시되는 tableView에는 데드 센터로 나타나기를 원합니다. tableView의 contentInset
속성을 다른 값으로 설정하려고했지만 아무 것도 올바른 오프셋을 제공하지 않는 것 같습니다. 어떤 제안?첫 번째 표 셀을 가운데로 스크롤
답변
UITableView
실제로 이것에 대한 깔끔한 방법이 있습니다
- (void)scrollToRowAtIndexPath:(NSIndexPath *)indexPath
atScrollPosition:(UITableViewScrollPosition)scrollPosition
animated:(BOOL)animated
셀이 같이있는 tableView의 중심에 어디 있는지 지점에있는 tableView를 스크롤하는 데 사용할 수 있습니다
:
[tableView scrollToRowAtIndexPath:indexPath atScrollPosition:UITableViewScrollPositionMiddle animated:TRUE];
이 작동하지 않습니다. ScrollPositionMiddle를 지정하더라도 행 0의 인덱스로 스크롤하면 해당 셀이 맨 위에 표시됩니다. – carlbenson
위의 셀이 없으므로 예상되는 동작입니다. 스크롤 뷰는 첫 번째 셀에서 시작되고 그 위로 스크롤 할 수 없습니다. 원하는 효과를 얻으려면 인세 트를 사용해야합니다. 질문에 대한 내 의견을 참조하십시오. – Emil
내가 이것을 할 수있는 유일한 방법은 scrollToRowAtIndexPath
대신 scrollRectToVisible
을 사용하는 것이 었습니다. 어떠한 이유로 든 (아마도 테이블을 스크롤링 할 수 없기 때문에) scrollToRowAtIndexPath
과 contentInset
을 결합하는 @ Emil의 제안을 사용해도 위치 지정은 여전히 해제되었습니다.
이 작동 :
tableView.contentInset = UIEdgeInsets(top: cellHeight, left: 0, bottom: cellHeight, right: 0)
tableView.scrollRectToVisible(CGRectMake(0, 0 - tableView.contentSize.height, cellWidth, tableView.contentSize.height), animated: false)
- 1. UITableViewCell은 스크롤 후 첫 번째 셀의 마지막 셀을 표시합니다.
- 2. CSV 첫 번째 셀을 제한
- 3. UITableView 첫 번째 셀을 스크롤하지 않습니다.
- 4. DIV의 수직 가운데로 스크롤
- 5. 애니메이션으로 가운데로 스크롤
- 6. jQuery는 표 셀을 선택합니다.
- 7. 첫 번째 행의 첫 번째 셀을 Excel에서 설정하십시오.
- 8. UITableView, 첫 번째 셀을 고정해야 함
- 9. 활성 링크에 따라 가운데로 스크롤
- 10. 첫 번째/마지막 ListBox 항목을 스크롤보기의 중심으로 스크롤
- 11. UICollectionView의 첫 번째 위치에 셀을 삽입하려면 어떻게해야합니까?
- 12. 아코디언 - 첫 번째 셀을 활성화하지 않으려 고합니다.
- 13. 열의 첫 번째 빈 셀을 찾으십시오.
- 14. ListView는 첫 번째 셀을 사용자 정의합니다.
- 15. jQuery는 테이블의 첫 번째 셀을 찾습니다.
- 16. 첫 번째 열이없는 표 가져 오기
- 17. 첫 번째 행만 인식하는 HTML 표
- 18. odt 문서의 첫 번째 표 가져 오기
- 19. 조건부로 첫 번째 셀을 기준으로 행의 셀 서식 지정
- 20. 표 셀을 어떻게 추적합니까?
- 21. jQuery로 열의 첫 번째 표 셀 값 가져 오기
- 22. jQuery에서 중첩 테이블 셀을 선택하지 않고 표 셀을 선택하는 방법
- 23. MPMoviePlayerController가 스크롤 갤러리에서 첫 번째 비디오를로드하지 않습니다.
- 24. 첫 번째 스크롤 만 100 % 스크롤하는 방법
- 25. Jquerytools "scrollable"첫 번째 페이지로 스크롤
- 26. ListView 스크롤 후 다시 첫 번째 위치에
- 27. 어떻게 jQuery의 .draggable을 사용하여 표 셀을 드래그합니까?
- 28. jquery Isotope - 스크롤하여 가운데로 스크롤 클릭
- 29. RichTextBox 스크롤 위치를 사용자 유형대로 가운데로 유지
- 30. CSS : 표 머리글과 첫 번째 열 고정, * 특정 축에서만 *
귀하의 contentInset 두 가지로 나눈있는 tableview 마이너스 내가 생각하는 것 tableViewCell의 절반 높이의 높이가 될 것입니다. 너 그거 해봤 니? – Emil
@ 에밀, 무슨 뜻인지 모르겠다. contentInset은 UIEdgeInsets 유형이므로 위쪽, 아래쪽, 왼쪽 및 오른쪽 값을 사용합니다. 당신의 도움을 주셔서 감사합니다. – carlbenson
그래, 상단 인세 트는 tableView 높이에서 셀 높이의 절반을 뺀 값의 절반이됩니다. – Emil