Facebookでアプリから写真とテキストを共有したい。SLComposeViewController
クラスを共有に使用しました。
私の問題は、Facebook ボタンをタップすると、投稿したい画像を含むダイアログ ボックスが表示されますが、シミュレーターでは完全に正常に動作している間、デフォルトのテキストがデバイスに表示されないことです。このコードは、シミュレーターとデバイスの両方で Twitter に対して完全に機能します。より明確にするために、コードと画像を追加しました
if([SLComposeViewController isAvailableForServiceType:SLServiceTypeFacebook])
{
SLComposeViewController *controller = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeFacebook];
SLComposeViewControllerCompletionHandler myBlock = ^(SLComposeViewControllerResult result)
{
if (result == SLComposeViewControllerResultCancelled)
{
NSLog(@"Cancelled");
} else
{
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Congratulations!" message:@"Photo is posted to facebook Wall." delegate:nil cancelButtonTitle:@"Ok" otherButtonTitles:nil, nil];
[alert show];
}
[controller dismissViewControllerAnimated:YES completion:Nil];
};
controller.completionHandler =myBlock;
str=[NSString stringWithFormat:@"Text to share"];
[controller setInitialText:str];
[controller addImage:savedImage];
[self presentViewController:controller animated:YES completion:Nil];
}