【问题标题】:Need to arrange the displaying pattern in table view controller Xcode 7 using Firebase需要使用 Firebase 在表格视图控制器 Xcode 7 中安排显示模式
【发布时间】:2016-03-21 17:26:36
【问题描述】:
我创建了一个表格视图控制器,它从 firebase 填充单元格。该表加载完美,但有一个小问题。每当添加新项目时,该项目都会显示在屏幕底部而不是顶部。如何安排我的项目,以便每当添加新项目时,它都会显示在顶部单元格上并显示在应用程序的顶部而不是底部,因此我不必向下滚动以查看新项目有什么已添加..
【问题讨论】:
标签:
ios
xcode
firebase
controller
【解决方案1】:
Firebase 没有自然顺序 - 您需要确定数据的排序方式并相应地设置结构。然后按该顺序检索数据。您可以按它们的键、值或优先级对它们进行排序。
例如:
您有一个博客应用程序,并且您总是希望按时间顺序列出博客:
post_0
timestamp: 1
post: "posted at 1am"
post_1
timeStamp: 13
post: "posted at 1pm"
post_2
timeStamp: 9
post: "posted at 9am"
当您阅读帖子节点时,按时间戳排序,它将按照 1、9、13 的顺序。
ref.queryOrderedByChild("timeStamp").observeEventType(.ChildAdded, withBlock: { snapshot in
println("\(snapshot.value)")
})
如果您只想要最新的两个帖子,请使用限制查询。
let scoresRef = Firebase(url:"https://dinosaur-facts.firebaseio.com/scores")
postsRef.queryOrderedByValue().queryLimitedToLast(2).observeEventType(.ChildAdded, withBlock: { snapshot in
println("post time \(snapshot.value)")
})
当然还有很多其他的选择:
Firebase Reading Data 是理解查询和数据排序的非常好的参考。