Мне нужно показать на UITableView с разделами все значения из таблицы 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 Я предлагаю: просто получить то, что вам нужно, чтобы отобразить + небольшую комнату для передышки, чтобы вы могли как можно быстрее представить что-то пользователю, а затем принести остальное, по мере необходимости или сразу. –