Facebook的朋友选择不选择SDK 3.1中的朋友

问题描述:

我正在创建一个想要列出Facebook朋友的应用。为此我做了以下。Facebook的朋友选择不选择SDK 3.1中的朋友

- (void)viewDidLoad 
{   
    arrayFriends=[[NSMutableArray alloc]init]; 
    [super viewDidLoad]; 
    if (!FBSession.activeSession.isOpen) { 
     // if the session is closed, then we open it here, and establish a handler for state changes 
     [FBSession.activeSession openWithCompletionHandler:^(FBSession *session, 
                  FBSessionState state, 
                  NSError *error) { 
      switch (state) { 
       case FBSessionStateClosedLoginFailed: 
       { 
        UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"Error" 
                     message:error.localizedDescription 
                     delegate:nil 
                   cancelButtonTitle:@"OK" 
                   otherButtonTitles:nil]; 
        [alertView show]; 
       } 
        break; 
       default: 
        break; 
      } 
     }]; 
    }  
} 

-(void)viewWillAppear:(BOOL)animated 
{ 
    if (self.friendPickerController == nil) { 
     // Create friend picker, and get data loaded into it. 
     self.friendPickerController = [[FBFriendPickerViewController alloc] init]; 
     self.friendPickerController.title = @"Pick Friends"; 
     self.friendPickerController.delegate = self; 
    } 

    [self.friendPickerController loadData]; 
    [self.friendPickerController clearSelection]; 
    [self.friendPickerController.view setFrame:CGRectMake(0, 77, 320, 383)]; 
    [self.view addSubview:self.friendPickerController.view]; 
    // iOS 5.0+ apps should use [UIViewController presentViewController:animated:completion:] 

} 

viewcontroller with list of friends 你可以得到好友列表这样的图像,你需要添加下面的代码在你的viewWillAppear中:方法

if (self.friendPickerController == nil) { 
    // Create friend picker, and get data loaded into it. 
    self.friendPickerController = [[FBFriendPickerViewController alloc] init]; 
    self.friendPickerController.title = @"Pick Friends"; 
    self.friendPickerController.delegate = self; 
} 

[self.friendPickerController loadData]; 
[self.friendPickerController clearSelection]; 

[self presentModalViewController:self.friendPickerController animated:YES]; 

的完成,取消,我们应该分别致电下列方法按钮动作,

- (void)facebookViewControllerDoneWasPressed:(id)sender{ 
    //code goes here 
} 
- (void)facebookViewControllerCancelWasPressed:(id)sender{ 
[self dismissModalViewControllerAnimated:YES]; 
} 
+0

可我能够改变这个视图控制器的背景颜色?我尝试了下面的代码,但背景没有改变.... [self.friendPickerController.tableView setBackgroundColor:[UIColor clearColor]]; [self.friendPickerController.tableView setBackgroundView:nil]; [self.friendPickerController.view setBackgroundColor:[UIColor clearColor]]; –

+1

@murali我可以获取所选朋友的用户名吗? –

+0

呈现此模式视图,但表格视图仍未填充联系人列表。任何建议如何解决这个问题? – Nishant

一对夫妇的事情,你需要考虑未在本教程中解释说,iSpark使用源垫erial(和他们的2013和提意见的一个可能希望他们知道):

  1. 出现在朋友选取器的用户仅安装了应用程序本身的用户。这是较新的,可能不适用于原始帖子的时间。
  2. 您需要用户的user_friends权限才能看到任何朋友。

一些更这里:Facebook iOS Select Friends Table Blank