FBRequest委托方法请求:didLoad:未被调用

时间:2012-01-02 09:28:23

标签: iphone objective-c ios facebook ipad

我正在使用Facebook ios sdk进行共享,我需要获取用户基本信息,例如userName,我正在做类似下面的事情, 在@interface

@interface ViewController : UIViewController<FBRequestDelegate,FBDialogDelegate,FBSessionDelegate>
--------
@property (nonatomic,retain) FBRequest *fbRequestObj;

和@implementation

- (void)viewDidLoad
{
    fbRequestObj = [[FBRequest alloc] init];
    [fbRequestObj setDelegate:(id)self];
    [super viewDidLoad];
}

- (void)request:(FBRequest *)request didLoad:(id)result {
    NSString* name = [result objectForKey:@"name"];
    userName = [NSString stringWithFormat:@"Logged in as %@",name];       
}

但我的问题是上面的FBRequest委托在任何实例中都没有被调用。我的实施方式是否正确?如果不是PLZ指导我。 任何帮助都要提前感谢。

1 个答案:

答案 0 :(得分:2)

分配/初始化FBRequest对象的方式看起来不正确 根据{{​​3}},您可以尝试执行以下操作:

-(void)viewDidLoad
{
    /* create the params dictionary */
    self.fbRequestObj = [FBRequest requestWithParams:yourParamsDictionary
                                            delegate:self];
    [super viewDidLoad];
}