IOS-Twitter和Facebook
IOS-Twitter和Facebook
簡介
Twitter已經整合到iOS5.0,而Facebook已經被整合在 iOS 6.0中。本教學的重點說明如何利用蘋果提供的類別在iOS5.0和iOS6.0中部署Twitter和Facebook。
實例步驟
1. 建立一個簡單View based application
2. 選擇專案文件,然後選擇"targets(目標)",然後在choose frameworks(選擇框架)中新增Social.framework 和Accounts.framework
3. 新增兩個名為facebookPost 和twitterPost的按鈕,並為他們創建ibActions。
4. 更新ViewController.h 如下
#import <Social/Social.h>#import <Accounts/Accounts.h>#import <UIKit/UIKit.h>@interface ViewController : UIViewController-(IBAction)twitterPost:(id)sender;-(IBAction)facebookPost:(id)sender;@end
5. 更新ViewController.m ,如下
#import "ViewController.h"@interface ViewController ()@end@implementation ViewController- (void)viewDidLoad{ [super viewDidLoad];}- (void)didReceiveMemoryWarning{ [super didReceiveMemoryWarning]; // Dispose of any resources that can be recreated.}-(IBAction)facebookPost:(id)sender{ SLComposeViewController *controller = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeFacebook]; SLComposeViewControllerCompletionHandler myBlock = ^(SLComposeViewControllerResult result){ if (result == SLComposeViewControllerResultCancelled) { NSLog(@"Cancelled"); } else { NSLog(@"Done"); } [controller dismissViewControllerAnimated:YES completion:nil]; }; controller.completionHandler =myBlock; //Adding the Text to the facebook post value from iOS [controller setInitialText:@"My test post"]; //Adding the URL to the facebook post value from iOS [controller addURL:[NSURL URLWithString:@"http://www.test.com"]]; //Adding the Text to the facebook post value from iOS [self presentViewController:controller animated:YES completion:nil]; }-(IBAction)twitterPost:(id)sender{ SLComposeViewController *tweetSheet = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeTwitter]; [tweetSheet setInitialText:@"My test tweet"]; [self presentModalViewController:tweetSheet animated:YES];}@end
輸出
運行該應用程式並單擊facebookPost 時我們將獲得以下輸出
當我們點擊twitterPost 時,我們將獲得以下輸出