1

我是 facebook 集成的新手。在我阅读了这么多教程之后,我从 facebook SDK 中了解了一些东西。

请帮助我解决这个问题。

- (void)apiGraphMe
{
 currentAPICall = kAPIGraphMe;
 AppDelegate *delegate = (AppDelegate *)[[UIApplication sharedApplication] delegate];
 NSMutableDictionary *params = [NSMutableDictionary dictionaryWithObjectsAndKeys:
                               @"name,picture",  @"fields",
                               nil];
 [[delegate facebook] requestWithGraphPath:@"me" andParams:params andDelegate:self];
}

- (void)request:(FBRequest *)request didLoad:(id)result
{
NSLog(@"result is------------%@",result);
if ([result isKindOfClass:[NSDictionary class]])
{
    NSLog(@"id is: %@", [result objectForKey:@"id"]); 
    NSString *idValue = [result objectForKey:@"id"];
}
}

在上面的代码中,我得到了登录用户个人资料图片的 URL。我希望将该 url 图像显示到 tableView 单元格中。

我认为直接将该 url 图像传递给 tableview 单元格的 imageview 是不正确的方法。如果
我们根据它传递用户的 id,我们可以获得个人资料图片。因为如果其他用户登录,它会降低复杂性。

希望您了解问题和背景。如果有任何语法或英语错误,请原谅。

非常感谢您提前提供的任何帮助和回复。

4

1 回答 1

4

以下是在 tableview 中显示用户/朋友个人资料图像的步骤

  • 您已经有用户/朋友 ID

  • 声明 IBOutlet FBProfilePictureView *userProfileImage; // 确保导入 FacebookSDK/FacebookSDK.h

  • 在您的 IB/Storeyboard 表格视图单元格中,拖动一个 UIView(宽 36,高 36)

  • 更改此 uiview 的类(在身份检查器中更改为 FBProfilePictureView)

  • 将上面的 iboutlet 连接到这个 FBProfilePictureView

  • 在 cellForRowAtIndexPath 中,分配图像如下

  • (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { static NSString *CellIdentifier = @"FriendsCell";

    FriendsCell单元格 = (FriendsCell )[tableView dequeueReusableCellWithIdentifier:CellIdentifier];

    cell.userProfileImage.profileID = objUD.userID; 返回单元格;}

注意:我假设您有一个名为 FriendsCell 的自定义 UITableViewCell 类

在 viewDidLoad 方法中,写下面一行 [FBProfilePictureView 类];

于 2012-09-01T01:16:40.970 回答