登录 立即注册
金钱:

Code4App-iOS开发-iOS 开源代码库-iOS代码实例搜索-iOS特效示例-iOS代码例子下载-Code4App.com

查看: 141|回复: 6

iOS9 系统分享调用(UIActivityViewController),iphone4s升级ios9

[复制链接]

181

主题

181

帖子

986

金钱

手工艺人

发表于 2018-1-11 15:12:47 | 显示全部楼层 |阅读模式

        

        

        昨天有网友说我写的那段系统分享代码在iOS9上有warning,看下了原来ios8之后UIPopoverController被废弃了。新增加的UIPopoverPresentationController在控制PopView上更简单好用。

        

        下面是我修改之后的代码:vcD4KPGg0IGlkPQ=="1-在app内以子视图方式打开其他app预览仅支持60以上">1. 在app内以子视图方式打开其他app预览,仅支持6.0以上

        openAppWithIdentifier(appId: String)


2. 分享文字图片信息,ipad上会以sourceView为焦点弹出选择视图

        share(textToShare: String, url: String, image: UIImage, sourceView: UIView)

[Java] 查看源文件 复制代码
/// 在app内以子视图方式打开其他app预览,仅支持6.0以上
    private func openAppWithIdentifier(appId: String) {
        if let _ = NSClassFromString(SKStoreProductViewController) {
            let storeProductViewController = SKStoreProductViewController()
            storeProductViewController.delegate = self
            let dict = NSDictionary(object:appId, forKey:SKStoreProductParameterITunesItemIdentifier) as! [String : AnyObject]
            storeProductViewController.loadProductWithParameters(dict, completionBlock: { (result, error) -> Void in
//                self.presentViewController(storeProductViewController, animated: true, completion: nil)
            })
            self.presentViewController(storeProductViewController, animated: true, completion: nil)
        }else {
            UIApplication.sharedApplication().openURL(NSURL(string: itms-apps://itunes.apple.com/app/id(appId))!)
        }
    }

    /// 分享文字图片信息,ipad上会以sourceView为焦点弹出选择视图
    private func share(textToShare: String, url: String, image: UIImage, sourceView: UIView) {
        let objectsToShare = [textToShare, url, image]
        let activityViewController = UIActivityViewController(activityItems: objectsToShare, applicationActivities: nil)
        if UIDevice.currentDevice().userInterfaceIdiom == UIUserInterfaceIdiom.Phone {
            self.presentViewController(activityViewController, animated: true, completion: nil)
        }else {
            let popover = activityViewController.popoverPresentationController
            if (popover != nil){
                popover?.sourceView = sourceView
                popover?.sourceRect = sourceView.frame
                popover?.permittedArrowDirections = UIPopoverArrowDirection.Any
                self.presentViewController(activityViewController, animated: true, completion: nil)
            }
        }
    }

        

                                               

21

主题

7129

帖子

2396

金钱

手工艺人

发表于 2018-1-11 15:14:53 | 显示全部楼层
虽不明,但觉厉...

14

主题

7077

帖子

1475

金钱

手工艺人

发表于 2018-1-11 15:16:04 | 显示全部楼层
感谢分享,code4app有你更精彩

23

主题

7098

帖子

1054

金钱

iOS大神

Rank: 6Rank: 6

分享大神

发表于 2018-1-11 15:18:04 | 显示全部楼层
感谢大神~

20

主题

7100

帖子

2375

金钱

手工艺人

发表于 2018-1-11 15:19:53 | 显示全部楼层
感谢大神分享,必须顶!

0

主题

7072

帖子

-521

金钱

限制会员

发表于 2018-1-11 15:23:12 | 显示全部楼层
感谢大神分享,必须顶!

16

主题

7123

帖子

1166

金钱

手工艺人

发表于 2018-1-11 15:29:44 | 显示全部楼层
写的真的很不错
*滑动验证:
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

关闭

每日头条

通过邮件订阅最新 Code4App 信息
上一条 /4 下一条

广告投放| Github|申请友链|手机版|Code4App ( 粤ICP备15117877号-1 )

快速回复 返回顶部 返回列表