2014-12-02 75 views
1

我目前正在掌握Xcode的Facebook框架。请求和显示多个视图中的FB信息

到目前为止,我已设法设置所有内容并通过我的应用程序登录。用户按下登录按钮并进行身份验证后,屏幕隐藏按钮,而是显示用户的名称和个人资料图片。这正是我需要的。

现在我正在实现一个隐藏的侧面菜单(当前也在工作),它将像以前一样显示用户的姓名和个人资料图片。不过,我不确定如何再次获得该信息。

为了清楚起见,这里是我的相关代码;

初始登录页面 - 显示头像

-(void)loginViewFetchedUserInfo:(FBLoginView *)loginView user:(id<FBGraphUser>)user{ 

self.fbProfilePicView.hidden = false; 
self.fbProfilePicView.profileID = user.objectID; 

} 

菜单视图显示尝试 - 空白影像,错误= “未声明的标识符 '用户' 的使用”

-(void)viewDidLoad{ 

self.menuProfilePic.profileID = user.objectID; 

} 

有谁知道如何使用像这样已经显示的数据?

回答

0

好的人谁可能会发现这一点,同时寻找类似的问题。

当读取数据,你可以做到这一点我上面贴的方式,像这样:

-(void)loginViewFetchedUserInfo:(FBLoginView *)loginView user:(id<FBGraphUser>)user{ 


//CODE TO EXECUTE 


} 

这是您批准的认证后,使用此功能,因为它是从登录过程美联储的信息。

//Verify User is Logged In 
if(FBSession.activeSession.isOpen){ 

    //Start Request for User's Information 
    [[FBRequest requestForMe] startWithCompletionHandler:^(FBRequestConnection *connection, NSDictionary<FBGraphUser> *user, NSError *error){ 

     //Code to Execute 
     if(!error){ 

      //CODE TO EXECUTE 

     } 

    }]; 

} 

在这两种情况下,你可以简单地通过在view.h文件中定义的属性,然后在其中填充有显示取数据:

后已被批准,你可以使用类似下面的信息获取您view.m:

VIEW.H

@property (weak, nonatomic) IBOutlet UILabel *uiLabel; 

@property (weak, nonatomic) IBOutlet FBProfilePictureView *fbProfilePicView; 

VIEW.M- 里面,我写了“代码来执行”

self.uiLabel.text = [NSString stringWithFormat:[user name]]; 

self.fbProfilePicView.profileID = user.objectID; 

我希望我在一个简单的写了这理解的方式。我很困惑,所以我确信有人会从中受益。