2016-05-12 3 views
0

я с помощью NSFetchedResultsController с UITableView. Мне нужно сделать чат, как iMessage, с упорядоченным сообщением сверху вниз. Мне нужно прокрутить вниз мой UITableView показать последнее сообщениеNSFetchedResultsController и scrollToBottom в таблице

tableView.scrollToRowAtIndexPath(lastMessageIndexPath, atScrollPosition: UITableViewScrollPosition.None, animated: false) 

, но когда я прокрутка моего UITableView, то тогда метод Tableview: cellForRowAtIndexPath: вызова для всех сообщений в fetchedResultsController. Я думаю, что из-за этого, и есть очень долго открытия ViewController

пожалуйста, помогите мне решить эту проблему, а также ускорить открытие ViewController

ответ

1

Не прокручивать, просто установить содержание смещения без анимации. Как минимум, необходимо определить высоту каждой ячейки, но сама ячейка не должна загружаться для каждой строки.

Обратите внимание, что в большинстве приложений, отображаемых таким образом, в ближайшей истории не будет сохранено все старые сообщения, у них будет только несколько страниц, и если вы прокрутите слишком далеко, им нужно будет идти и загружаться те старые сообщения. Этот подход ограничивает и загружает проблемы.

Смежные вопросы