Facebook sdk 3.5.1邀请好友请求在ios中进行双选
fb SDK 3.2没有这个问题,但在SDK 3.5.1中升级后,好友邀请器出现了一些奇怪的问题,当我选择一个好友时,它会选择所选的一个和它下面的一个。另外,当我试图向下滚动时,它会重新启动表格,并将我带回到表格顶部。 以下是我的方法:Facebook sdk 3.5.1邀请好友请求在ios中进行双选,ios,facebook,sdk,facebook-invite,Ios,Facebook,Sdk,Facebook Invite,fb SDK 3.2没有这个问题,但在SDK 3.5.1中升级后,好友邀请器出现了一些奇怪的问题,当我选择一个好友时,它会选择所选的一个和它下面的一个。另外,当我试图向下滚动时,它会重新启动表格,并将我带回到表格顶部。 以下是我的方法: -(IBAction)secondClick:(id)sender { NSDictionary *params = [[NSDictionary alloc] initWithObjectsAndKeys:nil]; [FBWebDialogs prese
-(IBAction)secondClick:(id)sender
{
NSDictionary *params = [[NSDictionary alloc] initWithObjectsAndKeys:nil];
[FBWebDialogs
presentRequestsDialogModallyWithSession:nil
message:@"Learn how to make your iOS apps social."
title:@"Test"
parameters:params
handler:^(FBWebDialogResult result, NSURL *resultURL, NSError *error) {
if (error) {
// Error launching the dialog or sending the request.
NSLog(@"Error sending request.");
} else {
if (result == FBWebDialogResultDialogNotCompleted) {
// User clicked the "x" icon
NSLog(@"User canceled request.");
} else {
// Handle the send request callback
NSDictionary *urlParams = [self parseURLParams:[resultURL query]];
if (![urlParams valueForKey:@"request"]) {
// User clicked the Cancel button
NSLog(@"User canceled request.");
} else {
// User clicked the Send button
NSString *requestID = [urlParams valueForKey:@"request"];
NSLog(@"Request ID: %@", requestID);
}
}
}
}];
据我所知,facebook已经解决了这个问题,并将很快使这个问题得到解决。 另一种解决方案是创建自己的自定义UI。 1.获取好友列表-[self-startConnectionWithGraphPath:@“我/好友”参数:params方法:@“获取”完成选择器:@selector(回调)]
这样,您就不需要显示facebook用户界面来选择朋友。虽然用户从自定义用户界面中选择好友后,用户界面仍会显示,但这只是点击“发送”按钮。一种方法是使用Facebook
好友选取器。
然后像尼廷说的那样,将facebook id的结果放入requestdialog
我将发布我的friendPicker代码:
- (IBAction)inviteFriendsClicked:(id)sender {
// Initialize the friend picker
FBFriendPickerViewController *friendPickerController =
[[FBFriendPickerViewController alloc] init];
// Set the friend picker title
friendPickerController.title = @"Välj vänner";
// TODO: Set up the delegate to handle picker callbacks, ex: Done/Cancel button
// Load the friend data
[friendPickerController loadData];
// Show the picker modally
[friendPickerController presentModallyFromViewController:self
animated:YES
handler:
^(FBViewController *sender, BOOL donePressed) {
if(donePressed) {
NSString *userString;
userString = @"";
int *counter = 0;
for (id<FBGraphUser> user in friendPickerController.selection) {
NSLog(user.id);
NSMutableArray *userArray = [[NSMutableArray alloc] init];
[userArray addObject:user.id];
if(counter == 0){
userString = user.id;
}else{
userString = [NSString stringWithFormat:@"%@%@%@", userString, @",", user.id];
}
counter++;
}
if(counter != 0){
[self requestDialog: userString]; // Display the requests dialog and send the id-string with it
}
// NSLog(@"Selected friends: %@", friendPickerController.selection);
}
}];
}
-(iAction)邀请的好友点击:(id)发件人{
//初始化好友选择器
FBFriendPickerController*friendPickerController=
[[FBFriendPickerViewController alloc]init];
//设置好友选取器标题
friendPickerController.title=@“Välj Vänner”;
//TODO:设置代理以处理选择器回调,例如:完成/取消按钮
//加载好友数据
[friendPickerController装载数据];
//显示选择器模式
[friendPickerController显示方式全部来自ViewController:self
动画:是的
处理程序:
^(FBViewController*发送器,BOOL donePressed){
如果(未按下){
NSString*userString;
用户字符串=@;
int*计数器=0;
for(friendPickerController.selection中的用户id){
NSLog(user.id);
NSMutableArray*userArray=[[NSMutableArray alloc]init];
[userArray addObject:user.id];
如果(计数器==0){
userString=user.id;
}否则{
userString=[NSString stringWithFormat:@“%@%@%@”,userString,@“,”,user.id];
}
计数器++;
}
如果(计数器!=0){
[self-requestDialog:userString];//显示请求对话框并发送id字符串
}
//NSLog(@“选定的朋友:%@”,friendPickerController.selection);
}
}];
}
我在SDK 3.2中也面临同样的问题。直到大约一周前,它一直运转良好。在我的android设备上,我也注意到了糖果粉碎传奇中的同样问题。@Dejan,如果你得到Answer,我也有同样的问题,请通知我