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 時,我們將獲得以下輸出

