0

新しい xcode4.5 では、ソーシャル ネットワークで共有する新しいクラス SLComposeViewController を見つけました。クラス リファレンスを読んでいますが、実装方法がわかりません。

ですから、何かアイデアがあれば、それは本当に役に立ちます。ありがとう

4

3 に答える 3

7

申し訳ありませんが、方法を見つけるだけです。ここにあります:

プロジェクトに Social.framework を追加する必要があります。次の #import "Social/Social.h" をファイルに追加します。

次の 3 種類のサービスを作成できます。

SLServiceTypeTwitter
SLServiceTypeFacebook
SLServiceTypeSinaWeibo

Facebookの例。

SLComposeViewController *fbController = 
     [SLComposeViewController 
                 composeViewControllerForServiceType:SLServiceTypeFacebook];


if([SLComposeViewController isAvailableForServiceType:SLServiceTypeFacebook])
{
    SLComposeViewControllerCompletionHandler __block completionHandler=
    ^(SLComposeViewControllerResult result){

       [fbController dismissViewControllerAnimated:YES completion:nil];

       switch(result){
       case SLComposeViewControllerResultCancelled:
       default:
       {
           NSLog(@"Cancelled.....");

       }
           break;
       case SLComposeViewControllerResultDone:
       {
           NSLog(@"Posted....");
           UIAlertView * alert = [[UIAlertView alloc] initWithTitle:@"Sent" 
              message:nil
              delegate:nil 
              cancelButtonTitle:@"Dismiss" 
              otherButtonTitles: nil];
           [alert show];
       }
           break;
   }};

   [fbController addImage:[UIImage imageNamed:@"your_image.jpg"]];
   [fbController setInitialText:@"The initial text you want to send"];
   [fbController addURL:[NSURL URLWithString:@"the url you wanna share"]];
   [fbController setCompletionHandler:completionHandler];
   [self presentViewController:fbController animated:YES completion:nil];
}

これが役に立つことを願っています。他のソーシャル ネットワークが必要な場合は、SLServiceTypeFacebook を他の 2 つのいずれかに変更します。

于 2012-08-07T16:30:00.700 に答える
2

私は最後のプロジェクトでもこの種の問題に直面しており、同じ問題の SLComposeViewControllerのサンプル コードを見つけました。役立つと思います。

ありがとう

于 2012-10-29T10:08:19.410 に答える