zoukankan      html  css  js  c++  java
  • 社交网络编程(2)---SLComposeViewController

    如分享信息时不想弹出分享列表,而是在APP中直接选择分享信息到哪一个应用(比如直接分享到新浪微博),SLComposeViewController类可以帮助我们实现这个目的。iOS 系统为SLComposeViewController类提供所管理的UI界面:

    SLComposeViewController所管理的视图可以撰写社交网络信息、发送这些信息以及取消发送,还有把自己的位置信息也添加到社交信息中发送。

    主要步骤:
        1)判断服务器是否可以访问
            使用方法isAvailableForServiceType:
        2)使用SLServiceTypeSinaWeibo来创建一个新浪微博view Controller
            其中
            SLServiceTypeFacebook 就是 Facebook
            SLServiceTypeTwitter 就是 Twitter
            SLServiceTypeWeibo 就是微博
     
        3)写一个bolck,用于completionHandler的初始化
        4)给view controller初始化默认的图片,url,文字信息
        5)以模态的方式展现view controller
    01    // 发送新浪微博
    02    - (IBAction)WeiboAction:(id)sender
    03    {   
    04        // 首先判断服务器是否可以访问
    05        if ([SLComposeViewController isAvailableForServiceType:SLServiceTypeSinaWeibo]) {
    06            NSLog(@\"Available\");
    07             
    08            // 使用SLServiceTypeSinaWeibo来创建一个新浪微博view Controller
    09            SLComposeViewController *socialVC = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeSinaWeibo];
    10    
    11            // 写一个bolck,用于completionHandler的初始化
    12            SLComposeViewControllerCompletionHandler myBlock = ^(SLComposeViewControllerResult result) {
    13                if (result == SLComposeViewControllerResultCancelled) {
    14                    NSLog(@\"cancelled\");
    15                } else
    16                {
    17                    NSLog(@\"done\");
    18                }
    19                [socialVC dismissViewControllerAnimated:YES completion:Nil];
    20            };
    21            // 初始化completionHandler,当post结束之后(无论是done还是cancell)该blog都会被调用
    22            socialVC.completionHandler = myBlock;
    23    
    24            // 给view controller初始化默认的图片,url,文字信息
    25            UIImage *image = [UIImage imageNamed:postImage.text];
    26            NSURL *url = [NSURL URLWithString:postUrl.text];
    27             
    28            [socialVC setInitialText:postText.text];
    29            [socialVC addImage:image];
    30            [socialVC addURL:url];
    31    
    32            // 以模态的方式展现view controller
    33            [self presentViewController:socialVC animated:YES completion:Nil];
    34    
    35        } else {
    36            NSLog(@\"UnAvailable\");
    37        }
    38    }
  • 相关阅读:
    jekins测试环境自动化
    jenkins
    git
    maven
    spring boot 1
    jmeter 常用函数
    Jmeter之BeanShell--请求失败触发报警邮件
    Python_任意文件中获取项目的绝对路径
    Python_logging在多模块项目中日志输出应用
    Python--判断Mysql启动状态并人工干预下完成启动
  • 原文地址:https://www.cnblogs.com/yaoxc/p/3720517.html
Copyright © 2011-2022 走看看