我对此行为感到惊讶,或者我不确定它可能是我的错误。问题是当我从Quickblox API检索QBCOCustomObject
个实例的记录时。我在调试器中获取实例属性控制台但是当使用键访问这些值时,我得到的是nil并且像Swift强制包装功能一样崩溃。
这是我的QuickBlox API的控制台输出。
{
"class_name" = PLProjectMember;
items = (
{
"_id" = 57177bd263f2d26030d616a0;
"_parent_id" = 57177bd2a0eb47c43b000019;
"created_at" = 1461156818;
name = "Ajay Babu";
"updated_at" = 1461156818;
"user_id" = 11736197;
},
{
"_id" = 57177bd263f2d26030d616a1;
"_parent_id" = 57177bd2a0eb47c43b000019;
"created_at" = 1461156818;
name = "Ajay Nath";
"updated_at" = 1461156818;
"user_id" = 11736197;
}
);
limit = 0;
skip = 0;
}
我正在访问这样的值,一旦我得到QBCOCustomObject实例。例如,在解析结果之后说我的实例是firstCustomObject
。这是获取值的代码,
firstCustomObject.fields?.valueForKey("name") // Worked Great
firstCustomObject.fields?.valueForKey("_id")//Crash as its giving nil
firstCustomObject.fields?.valueForKey("_parent_id")//Crash
firstCustomObject.fields?.valueForKey("updated_at")//Crash
我也使用过objectForKey()
方法,但崩溃也是如此。除了名称密钥以外,所有这些都会让我回到nil
并导致应用程序崩溃。任何人都可以遇到这个问题,请给我建议解决。
答案 0 :(得分:0)
我从来没有想过我会得到答案并在很早的时候把它还给我。解决方案就在这里,
https://sdk.quickblox.com/ios/documentation/Classes/QBCOCustomObject.html#//api/name/customObject
具有属性ID,parentID,userID.we的QBCOCustomObject可以直接访问来自该实例的值。喜欢,
firstCustomObject.ID
firstCustomObject.userID
firstCustomObject.parentID.