gpt4 book ai didi

ios - Facebook iOS SDK FBProfilePictureView 未获取或显示图像

转载 作者:行者123 更新时间:2023-11-29 04:15:43 24 4
gpt4 key购买 nike

我的 View Controller 中有以下代码

if (FBSession.activeSession.isOpen) {
[[FBRequest requestForMe] startWithCompletionHandler:
^(FBRequestConnection *connection, NSDictionary<FBGraphUser> *user, NSError *error) {
if (!error) {
self.nameString = user.name;
self.profileImage.profileID = [user objectForKey:@"id"];
[self.tableView reloadData];
}
}];
}

我遇到了两个问题。首先是永远不会获取和显示个人资料图像。第二个是我必须 [self.tableView reloadData] 才能显示名称。这会导致严重的滞后。我该如何解决这两个问题?

最佳答案

我不知道为什么你的个人资料图像没有被获取,但是我遇到了一些个人资料图像没有显示的问题,这导致我编写了 FBProfilePictureView 的修改版本,即 here .它有一个完成处理程序,如果下载失败,则会调用该完成处理程序并提供错误详细信息。 (就我而言,我认为问题在于我在短时间内发出了太多请求,而我的防火墙阻止了其中一些请求)。

至于必须重新加载整个表格,这取决于您显示它的位置。我假设在牢房里?如果是这样,那么当您创建单元格时,请执行以下操作:

    CustomCell *cell = (CustomCell*)[tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[CustomCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
}
if (FBSession.activeSession.isOpen) {
[[FBRequest requestForMe] startWithCompletionHandler:
^(FBRequestConnection *connection, NSDictionary<FBGraphUser> *user, NSError *error) {
if (!error) {
cell.profileImage.profileID = user.id;
}
}];
}

此外,请注意,您可以使用 user.iduser.name 来访问 requestForMe 查询的结果。

关于ios - Facebook iOS SDK FBProfilePictureView 未获取或显示图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13757717/

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