iOS:如何在社交networking上分享文字和图片?

请问,如果我犯了错误,你能告诉我吗?

NSString *sharedMsg=[NSString stringWithFormat:@"Hello world"]; UIImage* sharedImg=[UIImage imageNamed:@"image"]; NSArray* sharedObjects=[NSArray arrayWithObjects:sharedMsg, sharedImg, nil]; UIActivityViewController *activityViewController = [[UIActivityViewController alloc] initWithActivityItems:sharedObjects applicationActivities:nil]; activityViewController.popoverPresentationController.sourceView = self.view; [self presentViewController:activityViewController animated:YES completion:nil]; 

在运行时,当我selectFacebook的图标文本丢失,图像正确显示。
我的xcode是6.3.1,在iPad上testing过。

Facebook应用程序的最近更新似乎已经将内置的Facebook共享活动replace为忽略状态文本的活动 – 如果从设备中删除Facebook应用程序,则将使用您拥有的代码显示文本。 如果你已经安装了Facebook应用程序,你会得到图片,URL而不是文本

Facebook的政策不允许你预先填充状态消息,并要求所有的内容都是用户生成的 – 当我理解这个背后的意图时,我个人认为这在很多情况下是愚蠢的 – 例如在我的游戏中,我想预先填充用户的分数,但现在我不能,所以用户被提供一个空的对话框。 我可能会简单地删除Facebook共享选项,因为没有人会现在使用它。

来自Facebook的这一回应证实了这种行为是有目的的

这是Swift的答案。 这可能不会帮助你的问题,但它可能有助于寻找这个头衔的人。 只要创build一个button,它的行动。 并像这样安装button的动作。

注意:您必须通过设置login您的Facebook或Twitter。 那就这样做吧。

 @IBAction func onShareTouched(sender: AnyObject) { print("share") let myShare = "My beautiful photo! <3 <3" let image: UIImage = UIImage(named: "yourImageNameHere") let shareVC: UIActivityViewController = UIActivityViewController(activityItems: [(image), myShare], applicationActivities: nil) self.presentViewController(shareVC, animated: true, completion: nil) } 
 NSString* text=@"Hello world"; NSURL *myWebsite = [NSURL URLWithString:@"http://www.website.com/"]; // UIImage * myImage =[UIImage imageNamed:@"myImage.png"]; NSArray* sharedObjects=@[text,myWebsite]; UIActivityViewController * activityViewController=[[UIActivityViewController alloc]initWithActivityItems:sharedObjects applicationActivities:nil]; activityViewController.popoverPresentationController.sourceView = self.view; [self presentViewController:activityViewController animated:YES completion:nil];