绕过 facebook 个人资料图片,个人资料 ID 到个人资料视图控制器。

Posted

技术标签:

【中文标题】绕过 facebook 个人资料图片,个人资料 ID 到个人资料视图控制器。【英文标题】:Pass facebook profilePicture,profileId to profileViewController. 【发布时间】:2014-03-18 09:27:10 【问题描述】:

我已经能够将 user.name facebook 属性传递给 profileViewController。

但是我无法发送 FBProfilePicture 虽然这里是下面的方法:

// this method will be called when the user information has been fetched
- (void)loginViewFetchedUserInfo:(FBLoginView *)loginView user:(id<FBGraphUser>)user

    FBProfilePicture.profileID = user.id;
    FBNamePass = user.name;
    [self pushViewController:FBNamePass andProfilePicture:FBProfilePicture];

方法如下:

- (void)pushViewController:(NSString *)user andProfilePicture:(FBProfilePictureView *)profilePicture

    NeXtViewController *controller = [self.storyboard instantiateViewControllerWithIdentifier:@"NeXt"];
    controller.FBNameString = user;
    //controller.profilePicture.profileID = profilePicture.profileID;
    [controller setFBProfilePicture:profilePicture];
    [self.navigationController pushViewController:controller animated:NO];

我有什么做错了吗?

【问题讨论】:

你能解释一下“虽然这里是方法,但无法发送 FBProfilePicture”是什么意思? 我无法将 facebook pic 传递给 profileViewController 登录后,loginViewController 如果你在 Profilrpicture 中有 Url String 那么你应该从服务器搜索加载图像。 我们的 url 我没有使用 user.name 就做到了,所以应该可以使用 ProfilePictureView 来做到这一点 【参考方案1】:

似乎首先你需要初始化对象,然后才为它设置属性:

FBProfilePicture = [[FBProfilePictureClass alloc] init];
FBProfilePicture.profileID = user.id;

【讨论】:

我在哪里把它放在 profileViewCONtroller viewDidLoad; 或在 loginViewController 中,因为我在使用 UIView 制作 IBOutlet 并将类更改为 FBProfilePictureView 时初始化了对象 你可以在推送配置文件视图控制器之前将它放在- (void)loginViewFetchedUserInfo:(FBLoginView *)loginView user:(id&lt;FBGraphUser&gt;)user

以上是关于绕过 facebook 个人资料图片,个人资料 ID 到个人资料视图控制器。的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Xcode 上按高度调整 Facebook 个人资料图片的大小?

如何将我的 Facebook 个人资料图片作为按钮图片 [关闭]

无需 facebook api 或 facebook sdk 即可获取 facebook 数字 ID 和个人资料图片

Facebook API 个人资料图片

用户登录时解析获取 facebook 个人资料图片

如何获取带有“F”标志的 Facebook 个人资料图片?