Just a Computer Graphics Studio & My Life

儘管我們台灣人很少人使用推特,然而若我們設計的APP讓外國人也用的到,那麼推特就是個相當好的分享平台。就如同使用者可以很簡單地幾個動作就能分享,我們工程師也能夠容易地實現使用推特分享 (Using Twitter to Share)

Twitter share

可以分享文字、影像、連結、位置等等。

步驟為:增加Social Framework,匯入<Social/Social.h>即可!接下來就是撰寫程式碼,若想要成功運行,必須先在系統的設定(Settings)中登入推特帳號,而不必下載Twitter APP。

setting Facebook & Twitter

/**
 Theme: Using Twitter to Share
 IDE: Xcode 5
 Language: Objective C
 Date: 103/05/01
 Author: HappyMan
 Blog: https://cg2010studio.wordpress.com/
 */
-(IBAction)twitterButtonClicked:(UIButton *)button
{
    // 判斷社群網站的服務是否可用
    if ([SLComposeViewController isAvailableForServiceType:SLServiceTypeTwitter]) {

        // 建立對應社群網站的ComposeViewController
        SLComposeViewController *mySocialComposeView = [[SLComposeViewController alloc] init];
        mySocialComposeView = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeTwitter];

        // 插入文字
        [mySocialComposeView setInitialText:@"我是快樂測試人"];

        // 插入網址
        NSURL *myURL = [[NSURL alloc] initWithString:@"https://cg2010studio.wordpress.com/"];
        [mySocialComposeView addURL: myURL];

        // 插入圖片
        UIImage *myImage = [UIImage imageNamed:@"yichen.jpg"];
        [mySocialComposeView addImage:myImage];

        // 呼叫建立的SocialComposeView
        [self presentViewController:mySocialComposeView animated:YES completion:^{
            NSLog(@"成功呼叫 SocialComposeView");
        }];

        // 訊息成功送出與否的之後處理
        [mySocialComposeView setCompletionHandler:^(SLComposeViewControllerResult result){
            switch (result) {
                case SLComposeViewControllerResultCancelled:
                    NSLog(@"取消送出");
                    break;
                case SLComposeViewControllerResultDone:
                    NSLog(@"完成送出");
                    break;
                default:
                    NSLog(@"其他例外");
                    break;
            }
        }];
    }
    else {
        UIAlertView *av = [[UIAlertView alloc] initWithTitle:@"提醒" message:@"請先在系統設定中登入推特帳號。" delegate:nil cancelButtonTitle:@"好" otherButtonTitles:nil, nil];
        [av show];
    }
}

成功送出分享訊息後,到推特看張貼效果:

Twitter share result

原本想放喜歡的人的相片,不過礙於我要保護對方,就只好請林依晨出來見見大家:P~

參考:使用 Social Framework 對社群網站發佈訊息

廣告

發表留言

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com Logo

您的留言將使用 WordPress.com 帳號。 登出 / 變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 / 變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 / 變更 )

Google+ photo

您的留言將使用 Google+ 帳號。 登出 / 變更 )

連結到 %s

標籤雲

%d 位部落客按了讚: