【发布时间】:2016-10-20 01:24:31
【问题描述】:
我使用 Swift 和 Firebase 作为我的后端。出于某种原因,我在我的一张快照中遇到了这个错误:
Could not cast value of type '__NSArrayM' (0x10591cc30) to 'NSDictionary'
当我使用这段代码时,我得到了这个:
let snapVal = snapshot.value as! [String: AnyObject]
为什么只有这个数据快照会发生这种情况,而它看起来像所有其他数据快照?
数据如下:
Snap (PERSON) {
1 = {
DESCRIPTION = "Brief description here..";
"DOB" = "10/15/92, 8:29 PM";
"STATUS" = 1;
SONG = "A song";
"START_DATE" = "10/05/16, 7:59 PM";
};
}
snapVal 看起来像这样(当我没有将它指定为 [String: AnyObject] 时:
(
"<null>",
DESCRIPTION = "Brief description here..";
"DOB" = "10/15/92, 8:29 PM";
"STATUS" = 1;
SONG = "A song";
"START_DATE" = "10/05/16, 7:59 PM";
}
)
为什么会这样?
【问题讨论】:
-
因为
snapshot.value是一个数组,而不是字典。 -
@Ryan 检查这个答案stackoverflow.com/a/39122662/4601170
-
@Ryan 使用您的检索功能更新您的问题。