我使用Quickblox API创建群聊,这需要使用以下格式将UserID发送到方法:
NSArray *usersIDs = @[@(55), @(678), @(22)];
此数组输出到日志:
Correct Format: (
55,
678,
22
)
在我的应用中,我将用户ID数组填充到NSMutableArray中,如下:
[holderArray addObject:[users valueForKey:@"ID"]]
这样输出到日志中(当我发送给方法时,它不起作用):
My Array: (
(
55
),
(
678
), (
22
),
)
有人可以解释我对holderArray做错了什么,以及如何让对象以正确的格式添加?
修改
以下是用户NSArray的日志输出:
users: (
"
[QBUUser]:
ID:55
created at:2015-08-27 19:33:24 +0000
updated at:2015-08-27 19:33:24 +0000
externalUserID:0
blobID:0
facebookID:(null)
twitterID:(null)
full name:(null)
email:(null)
login:3065555555
phone:(null)
tags:(null)
lastRequestAt:2015-08-29 22:49:34 +0000
customData:(null)
website:(null)"
)
答案 0 :(得分:3)
传递NSMutableArray
并没有错,因为它是NSArray
的子类,问题在于[users valueForKey:@"ID"]
返回,因为它看起来像NSArray
本身。
从后续评论来看,它似乎是NSArray
个NSDictionary
个对象,因此users valueForKey:
将返回字典中的所有ID。如果这是真的,那么只需使用holderArray
将其添加到addObjectsFromArray
:
NSArray *idents = [users valueForKey:@"ID"];
[holderArray addObjectsFromArray:idents];