Я работаю над приложением стиля Instagram, где у меня есть пользователи, загружающие изображения и комментарии/любимые. Мой backend - Firebase, и я использую Swift 2.3.Приложение ios с использованием Firebase и правильный способ синхронизации сообщений
У меня проблема с этим. В настоящее время я использую
FirebaseREF.observeEventType(.Value, withBlock: { snapshot in
наблюдать за любыми новыми сообщениями, а также публикация или публикация. Проблема в том, что когда у меня есть несколько пользователей, которые вошли в систему, и пользователи загружают/изменяют сообщения, UItableview в моем приложении будет прокручивать вверх или вниз в зависимости от того, добавляется или удаляется сообщение. (поскольку это синхронизация в реальном времени с Firebase)
Так что мой вопрос в том, что это правильный способ сделать это? Как мне реализовать что-то вроде Instagram/twitter, где я загружаю заданное количество сообщений, я могу просматривать в реальном времени любые изменения с сообщением на моем экране, а когда я вытягиваю, чтобы обновить, новые сообщения загружаются?
Я не хочу регистрироваться только для одного события с Firebase, так как мои сообщения не обновляются, когда кому-то нравится/закладок, и мне придется перезагружать табличное представление, чтобы обновляться каждый раз.
У меня есть Pull, чтобы обновить часть работы. Проблема заключается в том, что мое приложение реагирует на все события в реальном времени и продолжает прокручивать/обновлять, когда есть какая-либо деятельность в бэкэнд, и это создает настоящий плохой опыт.
Не повторяют ли ячейки, хотя я пытался посмотреть на tableview.visiblecells и они, похоже, имеют одинаковую информацию ... – NetCod
Они имеют одинаковую информацию, если ни одна из видимых ячеек не изменилась, но разве вы не хотите, чтобы табличное представление не прокручивалось при внесении изменений? Вы хотите, чтобы ячейка наверху, чтобы оставаться наверху, чтобы табличное представление сохраняло свое относительное положение, даже когда его содержимое менялось. –
Извините, что я имел в виду, так как я прокрутил вниз, tableview.visiblecells.startindex и endindex продолжали меняться между 0 и 1. Поэтому я не понимаю, как я буду идентифицировать эту конкретную ячейку и вернуться к ней. – NetCod