gpt4 book ai didi

ios - Quickblox - 获取用户 friend 的头像并显示在 UITableView 中

转载 作者:行者123 更新时间:2023-11-29 02:33:55 26 4
gpt4 key购买 nike

我需要在 UITableView 中显示整个好友列表的头像图像。

我也可以在 Quickblox 论坛上提出这个问题,但似乎他们的支持在那里的响应速度较慢。

我已阅读 Quickblox 文档,但找不到获取用户头像图像的有效方法。我只看到 [QBContent TDownloadFileWithBlobID],但我不知道如何使用它。

我正在使用 chatContactListDidChange 委托(delegate)调用获取联系人,如下所示。现在我怎样才能同时获得所有这些用户的头像图像?

请注意,friendsArray 是我的 TableView 数据源,因此理想情况下我希望将头像图像存储为同一数组的一部分。

- (void)chatContactListDidChange:(QBContactList *)contactList
{
NSLog(@"contact list changed");
NSLog(@"current contact list %@", [QBChat instance].contactList);
[self fetchContacts:[QBChat instance].contactList.contacts];
}

- (void) fetchContacts : (NSArray *) contactArray
{
NSMutableArray * userIDArray = [[NSMutableArray alloc] init];
for (QBContactListItem * contact in contactArray)
{
NSString * userIDString = [NSString stringWithFormat:@"%ld", (unsigned long)contact.userID];
[userIDArray addObject:userIDString];
}

if (!userIDArray.count)
{
return;
}

NSString * requestString = [userIDArray componentsJoinedByString:@","];
[QBUsers usersWithIDs:requestString delegate:self context:@"FetchFriends"];
}

- (void)completedWithResult:(Result *)result context:(void *)contextInfo
{
if([result isKindOfClass:[QBUUserPagedResult class]])
{
NSString * context = (__bridge NSString *)contextInfo;
// Success result
if(result.success)
{
QBUUserPagedResult * pagedResult = (QBUUserPagedResult *)result;
if ([context isEqualToString:@"FetchFriends"])
{
if (friendsArray)
{
[friendsArray removeAllObjects];
}
else
{
friendsArray = [[NSMutableArray alloc] init];
}

QBUUser * user = [pagedResult.users objectAtIndex:0];
//user.blobID
friendsArray addObjectsFromArray:pagedResult.users];
}
}
else
{
NSLog(@"Error getting users: %@", context);
}
}
}

最佳答案

使用 QBUUser 的字段 - customData 用于用户图像的公共(public) url 和 blobID 用于上传的 blob。

Image --> [QBContent TUploadFile...] --> 获取回调结果 (QBCFileUploadTaskResult) --> 获取 blob (QBCBlob) --> 将 blob id 保存到 user.blobID --> 获取你的公共(public) url图片:[currentBlob publicURL] --> 保存到 user.customData --> 更新用户:[QBUsers updateUser...]希望对你有帮助。

关于ios - Quickblox - 获取用户 friend 的头像并显示在 UITableView 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26582198/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com