对于以下Firebase数据库查询,一切正常,但重新排序功能(字典基本重新排序到我之后使用的数组中)在初始加载时不起作用。
如果我然后离开页面并返回它(触发重新加载),那么所有内容都会很好地重新排序。我尝试过移动功能,但我没有多少运气。我不确定我错过了什么。
refHandle = ref.child("users/\(uid ?? "x")").child("Selections").observe(.childAdded, with: { snapshot in
self.userOriginalMenus.append(snapshot.key)
let rightDict = snapshot.value as! NSDictionary
for dictName in rightDict.allKeys {
self.userTitlesToDisplay.append(dictName as! String)
let selectionDict = rightDict[dictName] as! NSDictionary
for selectionName in selectionDict.allKeys {
let index = selectionDict[selectionName]
let selectionNumberString = index as! String
let actualSelectionNumber = Int(selectionNumberString)
self.userDict[actualSelectionNumber!] = "\(selectionName)"
self.userTitlesToDisplayDict[actualSelectionNumber!] = "\(dictName)"
self.userOriginalMenusDict[actualSelectionNumber!] = snapshot.key
}
}
self.reorderSelections()
})