我无法以最佳逻辑方式使用Firebase IOS SDK为我们的Feed创建像 viewDidLoad: loadPosts() - scrollViewDidScroll: loadMore() 这样的分页技术 . 在Parse mBaaaS上查询很容易 .limit() . 但我没有使用Firebase,有很大的问题,如 UIRefreshControl() 崩溃,滚动时没有加载等 .

然后我发现实时更新我的供稿页面的好东西,但当我使用 Firebase Dashboard 添加新帖子时(我做了测试,就像另一个用户在"posts"根节点上添加新帖子一样) tableView scrollUp a little bit by itself . 这很糟糕,如果我在Feed页面上阅读了一些内容,为什么app会将我从以前带到不同的地方 .

是否有任何方法可以阻止 scrollUpFirebase observeEventType(.Value ..?

这是我的 viewDidLoad: loadPosts() 功能:

let query = DataService.ds.REF_POSTS.queryOrderedByChild("timestamp")

    query.observeEventType(.Value, withBlock: { snapshot in

        if let snapshots = snapshot.children.allObjects as? [FDataSnapshot] {

            self.posts = []
            for snap in snapshots {
                if let postDict = snap.value as? Dictionary<String, AnyObject> {
                    let post = Post(postKey: snap.key, dictionary: postDict)
                    self.posts.append(post)
                }
            }

            self.posts = self.posts.reverse()
            self.tableView.reloadData()

            self.loadingIndicator.stopAnimating()

        }
    })