Facebook 앱처럼 무한 스크롤을 구현하려고합니다.메인 스레드를 잠그지 않고 UITableView insertRow
페이스 북은 현재 스크롤을 멈추지 않고 어떻게 든 행을 삽입하거나 테이블 뷰를 다시로드하는 것처럼 보입니다.
아무도 그들이 이것을 달성하는 방법을 알고 있습니까?
스크롤하는 동안 행 삽입 또는 데이터 다시로드를 호출하면 스크롤이 중지됩니다. 어떤 도움을 주시면 감사하겠습니다.
일반적인 UITableView 기능을 제공하기위한 코드는 많지 않습니다.
[self.tableView insertRowsAtIndexPaths:self.paths withRowAnimation:UITableViewRowAnimationNone];
또는
[self.tableView reloadData];
self.paths
- (CGFloat)tableView:(UITableView *)tableView estimatedHeightForRowAtIndexPath:(NSIndexPath *)indexPath;
을 추가했습니다. 불행하게도 이것은 셀의 추가 속도를 높이는 반면 여전히 현재 스크롤을 잠급니다.
주 스레드를 차단하고있는 *'insertRowsAtIndexPaths : ... '전에 처리가 완료되지 않았습니까? 아마도 당신은 데이터를 파싱하고 객체를 만드는 등 부드러운 스무딩을 멈출 수 있습니다. 아마도 전체 방법을 보여줄 수 있습니다. –
Facebook의 제 버전이 UITableView의 맨 아래에 도달하면 새로운 콘텐츠를로드 중임을 나타내는 진행 표시기가 표시되며 콘텐츠를 가져올 때까지 스크롤 할 수 없습니다. 현재 스크롤을 멈추지 않는다는 것은 무슨 뜻입니까? – ramzyo
@ramzyo - 말하자면 맨 아래로 치고 다시 스크롤하면 모든 종류의 도약없이 스크롤됩니다. – Steve