0

ユーザーが iOS6 の組み込みの「ツイート シート」を介して何かをツイートした後に、特定のアクションをトリガーしたい

ツイートシート

ユーザーが「送信」ボタンを押した後にメソッドをトリガーしたい。

あるいは、ツイートが正常に投稿されたという確認を iOS から受け取ることができれば、その時点でメソッドをトリガーしたいと思います。

これらのオプションのいずれかが可能ですか? ユーザーがツイートを投稿した後にアクションをトリガーする別の好ましい方法はありますか?

4

2 に答える 2

2
-(void)shareViewTwitter:(NSString*)str
{
    TWTweetComposeViewController *twitter = [[TWTweetComposeViewController alloc] init];

    // Optional: set an image, url and initial text

    [twitter setInitialText:@"Some Text"];

    // Show the controller
    [self presentModalViewController:twitter animated:YES];

    // Called when the tweet dialog has been closed (Here your Action will be triggered)
    twitter.completionHandler = ^(TWTweetComposeViewControllerResult result)
    {
        NSString *title = @"Tweet Status";
        NSString *msg;

        if (result == TWTweetComposeViewControllerResultCancelled)
// Your Action

            msg = @"Tweet compostion was canceled.";
        else msg = @"Tweet composition completed."; // Your Action

        // Show alert to see how things went...
        UIAlertView* alertView = [[UIAlertView alloc] initWithTitle:title message:msg delegate:self cancelButtonTitle:@"Okay" otherButtonTitles:nil];
        [alertView show];

        // Dismiss the controller

        [self dismissModalViewControllerAnimated:YES];

    };

}
于 2013-05-30T09:25:53.643 に答える
1

完了ハンドラを使用します。以下のコード例を参照してください。

SLComposeViewController *tweetSheet = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeTwitter];
tweetSheet.completionHandler = ^(SLComposeViewControllerResult result) {
    switch(result) {
        //  This means the user cancelled without sending the Tweet
        case SLComposeViewControllerResultCancelled:
            break;
        //  This means the user hit 'Send'
        case SLComposeViewControllerResultDone:
            break;
    }

    dispatch_async(dispatch_get_main_queue(), ^{
        [self dismissViewControllerAnimated:NO completion:^{
            NSLog(@"Tweet Sheet has been dismissed.");
        }];
    });
};

ソース: https://dev.twitter.com/docs/ios/using-tweet-sheet

于 2013-05-30T02:19:07.297 に答える