sqlite 테이블의 모든 값을 섹션으로 표시해야합니다. 테이블에는 100 000 개의 행이 있습니다. 데이터가 나타날 때까지 거의 5 초가 걸리는 것을 제외하면 모든 것이 잘 작동합니다. 나는 이것이 행 수가 많아서 일어난다는 것을 이해합니다. 따라서 테이블 뷰를 10 000 줄마다 새로 고침하기로 결정했습니다. 각 10 000 행의 경우, 방법SQLite SELECT 및 UITableView
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
호출하고 올바른 값을 반환하지만, cellForRowAtIndexPath
은 결코 전체 선택 (100 000)의 끝 부분을 제외하고 호출되지되어 있습니다. 현재 주 스레드에서 SQL 쿼리를 실행하고 있습니다. 테이블 뷰가 업데이트되지 않거나 내가 누락 된 이유가 무엇입니까?
문제는 섹션이 있다는 것입니다. 내가 각 섹션에 대해 처음으로 n 개의 행을 가져 오는 것이 좋습니다. 사용자가 문자 A에 있고 문자 Z를 탭했다고 가정 해 봅시다. 그런 다음 사용자가 스크롤하여 문자 Y에있게됩니다. 해당 셀에 대한 데이터는 아직 제공되지 않습니다. – Adriana
@adriana 내가 제안하는 바는 : 처음에는 약간의 호흡 실을 보여줄 필요가있다. 그래서 가능한 한 빨리 사용자에게 무엇인가를 보여줄 수 있고 나머지는 필요한만큼 또는 한꺼번에 가져올 수있다. –