我在自定义表格视图中有 FB 朋友的图像和名称。如何获取 FB ID 中的选定行并将请求发送给多个朋友?
Posted
技术标签:
【中文标题】我在自定义表格视图中有 FB 朋友的图像和名称。如何获取 FB ID 中的选定行并将请求发送给多个朋友?【英文标题】:I have FB friends images and names in custom table view. How to get selected row in FB ID's and send request to multiple friends? 【发布时间】:2014-01-08 05:30:55 【问题描述】:我只有一个 FB ID,但它不能在多选中工作。我有自定义表格视图 在 FB 好友列表中。如何获取选定行的 FB ID
NSMutableArray *arryOfFBIds;
for (id<FBGraphUser> user in self.friendPickerController.selection)
NSMutableArray *selection=(NSMutableArray *) self.friendPickerController.selection;
[selection addObject:user.id];
arryOfFBIds = [[NSMutableArray alloc] init];
for (id<FBGraphUser> user in self.friendPickerController.selection)
[arryOfFBIds addObject:user.id ];
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
[defaults setObject: arryOfFBIds forKey: @"SelectedFBIds"];
[defaults synchronize];
NSLog(@"array of fb id:%@",arryOfFBIds);
NSMutableDictionary* params2 = [NSMutableDictionary dictionaryWithObjectsAndKeys:@"Invite to on Ensmbl", @"description", @"http://placebogames.com/", @"link",
// 3. Suggest friends the user may want to request, could be game context specific?
[arryOfFBIds componentsJoinedByString:@","],@"to", nil];
NSLog(@"qwer:%@",params2);
[FBWebDialogs presentFeedDialogModallyWithSession:[FBSession activeSession] parameters:params2 handler:^(FBWebDialogResult result, NSURL *resultURL, NSError *error)
NSLog(@"error===>%@,resultURL===>%@",error,resultURL);
];
【问题讨论】:
您没有显示您正在使用的委托方法方法,上面的代码仅在使用 FB FPViewController,如果您的类是 FPViewController 的委托,并且代码放置在 - (void)facebookViewControllerDoneWasPressed: - 看下面的答案,我用过它并且它有效 (id)sender 【参考方案1】:查看您下载的 SDK 源文件(可能安装在 My Documents 文件夹中) - 示例源代码之一称为 FriendPickerSample.xcodeproj
简而言之,为了显示朋友的表格视图,FB ios 使用了一个特殊的自定义表格视图控制器类,称为 FPViewController,它继承自 UIViewController,但具有 allowMultipleSelection 属性,如果设置为 TRUE 将允许您选择几个朋友,直到您按完成按钮。
完成按钮将触发一个名为
的委托方法- (void)facebookViewControllerDoneWasPressed:(id)sender
NSMutableString *text = [[NSMutableString alloc] init];
// we pick up the users from the selection, and create a string that we use to update the text view
// at the bottom of the display; note that self.selection is a property inherited from our base class
for (id<FBGraphUser> user in self.friendPickerController.selection)
if ([text length])
[text appendString:@", "];
[text appendString:user.name];
[self fillTextBoxAndDismiss:text.length > 0 ? text : @"<None>"];
只需使用示例代码并进行修改,您就可以对一组选定的朋友做任何您想做的事情。
【讨论】:
以上是关于我在自定义表格视图中有 FB 朋友的图像和名称。如何获取 FB ID 中的选定行并将请求发送给多个朋友?的主要内容,如果未能解决你的问题,请参考以下文章
UIImageView 没有出现在自定义 UITableViewCell 中