Ios 从Firebase检索布尔数组
从Firebase的快照中检索布尔数组会得到0和1。在我的项目中将布尔数组从Firebase存储到数组的最佳方式是什么 这是我的代码:Ios 从Firebase检索布尔数组,ios,arrays,swift,firebase,firebase-realtime-database,Ios,Arrays,Swift,Firebase,Firebase Realtime Database,从Firebase的快照中检索布尔数组会得到0和1。在我的项目中将布尔数组从Firebase存储到数组的最佳方式是什么 这是我的代码: func loadUpInformation() { print("loading data") let user = FIRAuth.auth()?.currentUser let userID = FIRAuth.auth()?.currentUser?.uid ref = FIRDat
func loadUpInformation()
{
print("loading data")
let user = FIRAuth.auth()?.currentUser
let userID = FIRAuth.auth()?.currentUser?.uid
ref = FIRDatabase.database().reference()
ref.child("users").child(userID!).observeSingleEvent(of: .value, with: { (snapshot) in
if !snapshot.exists() { return }
if let achievementsUnlockedFirebase = snapshot.childSnapshot(forPath: "/AchievementsUnlocked").value
{
// ????
}
})
}
我已经试过了:
没有给我一个指纹,变为?串到as?布尔也有同样的结果。删除“as?String”会给我一个输出,它们是0和1。所以我可以用做什么?Int,但我需要把它转换成布尔值。我用for-in循环进行了尝试,但随后出现了无法将类型转换为序列的错误
如何将Firebase中的布尔数组转换为Swift中的布尔数组
if let AchievementsUnlockedFirebase = snapshot.childSnapshot(forPath: "/AchievementsUnlocked").value as? Bool
{
print("snapshot exist")
achievementsUnlocked.append(AchievementsUnlockedFirebase)
print(AchievementsUnlockedFirebase)
print(achievementsUnlocked)
}