1、运行示例程序,会看到如下画面
2、点击测试按钮,会看到如下画面,以模态的方式,展现出指定的服务。可以看到,mail图标没有,这是模拟器的一个bug。其中我们可以看到有Twitter,Facebook,新浪微博等服务。这里显示的内容会根据你指定的对象来进行限定。
3、我们点击新浪微博,会看到如下画面,这个画面调用了SLComposeViewController,关于SLComposeViewController的详细信息请看下面连接:
iOS6新特征:Social Framework 参考之SLComposeViewController
iOS6新特征:SLComposeViewController[新浪微博]使用示例
下面大致介绍一下 UIActivityViewController的使用
1、使用范围
目前只能以模态的方式显示
2、如何使用
1)定义ActivityItems,并初始化,这里我们给ActivityItems初始化了一个字符串,一个图片,还有一个URL。
2)初始化一个UIActivityViewController,使用第一步骤定义的ActivityItems进行初始化,这个参数是必须要有的,不能为空。而第二个参数applicationActivities可以为nil,详细内容可以参考 iOS6新特征:UIActivityViewController类参考。
3)给activityVC的属性completionHandler写一个block。用以UIActivityViewController执行结束后,被调用,做一些后续处理。
4)以模态的方式展现activityVC。
- (void)viewDidLoad
{
[super viewDidLoad];
self.shareImage=[UIImage imageNamed:@"girl.jpg"];
self.shareText=@"现在较为蛋疼的是 用ios6自带的social.framework 发出来的 在微博来源会显示是ios而不是iphoneX 而且如果默认输入字数如果超过了限制 他会不显示 略坑爹的说";
// Do any additional setup after loading the view, typically from a nib.
}
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
//分享
- (IBAction)click:(id)sender {
NSLog(@"111");
NSArray *activityItems;
if(self.shareImage){
activityItems=@[self.shareText,self.shareImage];
}else{
activityItems=@[self.shareText];
}
UIActivityViewController* aVC=[[UIActivityViewController alloc]initWithActivityItems:activityItems applicationActivities:nil];
// 写一个bolck,用于completionHandler的初始化
UIActivityViewControllerCompletionHandler myBlock = ^(NSString *activityType,BOOL completed) {
NSLog(@"%@", activityType);
if(completed) {
NSLog(@"completed");
} else
{
NSLog(@"cancled");
}
[aVC dismissViewControllerAnimated:YES completion:Nil];
};
// 初始化completionHandler,当post结束之后(无论是done还是cancell)该blog都会被调用
aVC.completionHandler = myBlock;
[self presentViewController:aVC animated:YES completion:nil];
}
iOS6新特征:SLComposeViewController [新浪微博] 使用示例
下图中可以输入文字,url,图片(注,这里图片只给出了一个路径,在实际app中,图片来源可能是图片拾取器或者照相机)
当点击发送至新浪微博按钮时,会看到下面的画面效果
下面大致介绍一下 SLComposeViewController 的使用
1、使用范围
目前只能以模态的方式显示
2、如何使用
a)添加Social.framework至工程如下图所示
b)添加 #import<Social/Social.h>到相应的文件中
c)关键代码如下所示
主要步骤:
1)判断服务器是否可以访问
使用方法isAvailableForServiceType:
2)使用SLServiceTypeSinaWeibo来创建一个新浪微博view Controller
其中
SLServiceTypeFacebook 就是 Facebook
SLServiceTypeTwitter 就是 Twitter
SLServiceTypeWeibo 就是微博
3)写一个bolck,用于completionHandler的初始化
4)给view controller初始化默认的图片,url,文字信息
5)以模态的方式展现view controller
// 发送新浪微博
- (IBAction)weiboClick:(id)sender {
// 首先判断服务器是否可以访问
if ([SLComposeViewController isAvailableForServiceType:SLServiceTypeSinaWeibo]) {
NSLog(@"Available");
// 使用SLServiceTypeSinaWeibo来创建一个新浪微博view Controller
SLComposeViewController *socialVC = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeSinaWeibo];
// 写一个bolck,用于completionHandler的初始化
SLComposeViewControllerCompletionHandler myBlock = ^(SLComposeViewControllerResult result) {
if (result == SLComposeViewControllerResultCancelled) {
NSLog(@"cancelled");
} else
{
NSLog(@"ok");
}
[socialVC dismissViewControllerAnimated:YES completion:Nil];
};
// 初始化completionHandler,当post结束之后(无论是done还是cancell)该blog都会被调用
socialVC.completionHandler = myBlock;
// 给view controller初始化默认的图片,url,文字信息
UIImage *image = [UIImage imageNamed:@"girl.jpg"];
NSURL *url = [NSURL URLWithString:@"http://www.baidu.com"];
[socialVC setInitialText:self.shareText];
[socialVC addImage:image];
[socialVC addURL:url];
// 以模态的方式展现view controller
[self presentViewController:socialVC animated:YES completion:Nil];
} else {
NSLog(@"UnAvailable");
}
}
2、点击测试按钮,会看到如下画面,以模态的方式,展现出指定的服务。可以看到,mail图标没有,这是模拟器的一个bug。其中我们可以看到有Twitter,Facebook,新浪微博等服务。这里显示的内容会根据你指定的对象来进行限定。
3、我们点击新浪微博,会看到如下画面,这个画面调用了SLComposeViewController,关于SLComposeViewController的详细信息请看下面连接:
iOS6新特征:Social Framework 参考之SLComposeViewController
iOS6新特征:SLComposeViewController[新浪微博]使用示例
下面大致介绍一下 UIActivityViewController的使用
1、使用范围
目前只能以模态的方式显示
2、如何使用
1)定义ActivityItems,并初始化,这里我们给ActivityItems初始化了一个字符串,一个图片,还有一个URL。
2)初始化一个UIActivityViewController,使用第一步骤定义的ActivityItems进行初始化,这个参数是必须要有的,不能为空。而第二个参数applicationActivities可以为nil,详细内容可以参考 iOS6新特征:UIActivityViewController类参考。
3)给activityVC的属性completionHandler写一个block。用以UIActivityViewController执行结束后,被调用,做一些后续处理。
4)以模态的方式展现activityVC。
- (void)viewDidLoad
{
[super viewDidLoad];
self.shareImage=[UIImage imageNamed:@"girl.jpg"];
self.shareText=@"现在较为蛋疼的是 用ios6自带的social.framework 发出来的 在微博来源会显示是ios而不是iphoneX 而且如果默认输入字数如果超过了限制 他会不显示 略坑爹的说";
// Do any additional setup after loading the view, typically from a nib.
}
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
//分享
- (IBAction)click:(id)sender {
NSLog(@"111");
NSArray *activityItems;
if(self.shareImage){
activityItems=@[self.shareText,self.shareImage];
}else{
activityItems=@[self.shareText];
}
UIActivityViewController* aVC=[[UIActivityViewController alloc]initWithActivityItems:activityItems applicationActivities:nil];
// 写一个bolck,用于completionHandler的初始化
UIActivityViewControllerCompletionHandler myBlock = ^(NSString *activityType,BOOL completed) {
NSLog(@"%@", activityType);
if(completed) {
NSLog(@"completed");
} else
{
NSLog(@"cancled");
}
[aVC dismissViewControllerAnimated:YES completion:Nil];
};
// 初始化completionHandler,当post结束之后(无论是done还是cancell)该blog都会被调用
aVC.completionHandler = myBlock;
[self presentViewController:aVC animated:YES completion:nil];
}
iOS6新特征:SLComposeViewController [新浪微博] 使用示例
下图中可以输入文字,url,图片(注,这里图片只给出了一个路径,在实际app中,图片来源可能是图片拾取器或者照相机)
当点击发送至新浪微博按钮时,会看到下面的画面效果
下面大致介绍一下 SLComposeViewController 的使用
1、使用范围
目前只能以模态的方式显示
2、如何使用
a)添加Social.framework至工程如下图所示
b)添加 #import<Social/Social.h>到相应的文件中
c)关键代码如下所示
主要步骤:
1)判断服务器是否可以访问
使用方法isAvailableForServiceType:
2)使用SLServiceTypeSinaWeibo来创建一个新浪微博view Controller
其中
SLServiceTypeFacebook 就是 Facebook
SLServiceTypeTwitter 就是 Twitter
SLServiceTypeWeibo 就是微博
3)写一个bolck,用于completionHandler的初始化
4)给view controller初始化默认的图片,url,文字信息
5)以模态的方式展现view controller
// 发送新浪微博
- (IBAction)weiboClick:(id)sender {
// 首先判断服务器是否可以访问
if ([SLComposeViewController isAvailableForServiceType:SLServiceTypeSinaWeibo]) {
NSLog(@"Available");
// 使用SLServiceTypeSinaWeibo来创建一个新浪微博view Controller
SLComposeViewController *socialVC = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeSinaWeibo];
// 写一个bolck,用于completionHandler的初始化
SLComposeViewControllerCompletionHandler myBlock = ^(SLComposeViewControllerResult result) {
if (result == SLComposeViewControllerResultCancelled) {
NSLog(@"cancelled");
} else
{
NSLog(@"ok");
}
[socialVC dismissViewControllerAnimated:YES completion:Nil];
};
// 初始化completionHandler,当post结束之后(无论是done还是cancell)该blog都会被调用
socialVC.completionHandler = myBlock;
// 给view controller初始化默认的图片,url,文字信息
UIImage *image = [UIImage imageNamed:@"girl.jpg"];
NSURL *url = [NSURL URLWithString:@"http://www.baidu.com"];
[socialVC setInitialText:self.shareText];
[socialVC addImage:image];
[socialVC addURL:url];
// 以模态的方式展现view controller
[self presentViewController:socialVC animated:YES completion:Nil];
} else {
NSLog(@"UnAvailable");
}
}
当点击发送至新浪微博按钮时,会看到下面的画面效果
下面大致介绍一下 SLComposeViewController 的使用
1、使用范围
目前只能以模态的方式显示
2、如何使用
a)添加Social.framework至工程如下图所示
b)添加 #import<Social/Social.h>到相应的文件中
c)关键代码如下所示
主要步骤:
1)判断服务器是否可以访问
使用方法isAvailableForServiceType:
2)使用SLServiceTypeSinaWeibo来创建一个新浪微博view Controller
其中
SLServiceTypeFacebook 就是 Facebook
SLServiceTypeTwitter 就是 Twitter
SLServiceTypeWeibo 就是微博
3)写一个bolck,用于completionHandler的初始化
4)给view controller初始化默认的图片,url,文字信息
5)以模态的方式展现view controller
// 发送新浪微博
- (IBAction)weiboClick:(id)sender {
// 首先判断服务器是否可以访问
if ([SLComposeViewController isAvailableForServiceType:SLServiceTypeSinaWeibo]) {
NSLog(@"Available");
// 使用SLServiceTypeSinaWeibo来创建一个新浪微博view Controller
SLComposeViewController *socialVC = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeSinaWeibo];
// 写一个bolck,用于completionHandler的初始化
SLComposeViewControllerCompletionHandler myBlock = ^(SLComposeViewControllerResult result) {
if (result == SLComposeViewControllerResultCancelled) {
NSLog(@"cancelled");
} else
{
NSLog(@"ok");
}
[socialVC dismissViewControllerAnimated:YES completion:Nil];
};
// 初始化completionHandler,当post结束之后(无论是done还是cancell)该blog都会被调用
socialVC.completionHandler = myBlock;
// 给view controller初始化默认的图片,url,文字信息
UIImage *image = [UIImage imageNamed:@"girl.jpg"];
NSURL *url = [NSURL URLWithString:@"http://www.baidu.com"];
[socialVC setInitialText:self.shareText];
[socialVC addImage:image];
[socialVC addURL:url];
// 以模态的方式展现view controller
[self presentViewController:socialVC animated:YES completion:Nil];
} else {
NSLog(@"UnAvailable");
}
}