第12月第25天 ImagePickerSheetController

1.ImagePickerSheetController

open class ImagePickerSheetController: UIViewController, UITableViewDataSource, UITableViewDelegate, UICollectionViewDataSource, UICollectionViewDelegate, UICollectionViewDelegateFlowLayout, UIViewControllerTransitioningDelegate {
...
    lazy var backgroundView: UIView = {
        let view = UIView()
        view.backgroundColor = UIColor(white: 0.0, alpha: 0.3961)
        view.addGestureRecognizer(UITapGestureRecognizer(target: self, action: #selector(ImagePickerSheetController.cancel)))

        return view
    }()
...
    override open func loadView() {
        super.loadView()

        view.addSubview(backgroundView)
        view.addSubview(tableView)
    }
...
    // MARK: - Layout

    open override func viewDidLayoutSubviews() {
        super.viewDidLayoutSubviews()

        backgroundView.frame = view.bounds

        let tableViewHeight = Array(0..<tableView.numberOfRows(inSection: 1)).reduce(tableView(tableView, heightForRowAt: IndexPath(row: 0, section: 0))) { total, row in
            total + tableView(tableView, heightForRowAt: IndexPath(row: row, section: 1))
        }

        tableView.frame = CGRect(x: view.bounds.minX, y: view.bounds.maxY-tableViewHeight, width: view.bounds.width, height: tableViewHeight)
    }
        let authorization = PHPhotoLibrary.authorizationStatus()

        if authorization == .notDetermined {
            PHPhotoLibrary.requestAuthorization({ (status) -> Void in
                DispatchQueue.main.async(execute: { () -> Void in
                    self.pickProfileImage(tap)
                })
            })
        }

        if authorization == .authorized {
            let controller = ImagePickerSheetController()

            controller.addAction(ImageAction(title: NSLocalizedString("Take Photo or Video", comment: "Action Title"), secondaryTitle: NSLocalizedString("Use this one", comment: "Action Title"), handler: { (_) -> () in

                self.presentCamera()

                }, secondaryHandler: { (action, numberOfPhotos) -> () in
                    controller.getSelectedImagesWithCompletion({ (images) -> Void in
                        self.profileImage = images[0]
                        self.userProfileImageView.image = self.profileImage
                    })
            }))

            controller.addAction(ImageAction(title: NSLocalizedString("Cancel", comment: "Action Title"), style: .cancel, handler: nil, secondaryHandler: nil))

            present(controller, animated: true, completion: nil)
        }

https://github.com/allenwong/30DaysofSwift/

时间: 2024-08-31 15:30:13

第12月第25天 ImagePickerSheetController的相关文章

奇虎360退出美国股市 12月再曝拟私有化

文/辛东方 [摘要]2015年6月,奇虎360董事长周鸿祎宣布启动360私有化战略计划,并退出美国股市,12月再曝与投资者集团达成私有化协议.周鸿祎在股市上到底是赔了,还是赚了,外人不得而知!360到底在卖什么膏药,更是把行业人人士给纠结住了. 据了解,奇虎360是由周鸿祎于2005年9月创立的以主营360杀毒为代表的免费网络安全平台和拥有问答等独立业务的公司.该公司主要依靠在线广告.游戏.互联网和增值业务创收. 2015年6月,奇虎360与投资者集团达成私有化协议,奇虎360的全现金私有化交易

项目管理者联盟PMP培训班招生简章(针对2014年12月考试)

PMP认证培训班招生简章(针对2014年12月考试) 主办单位:项目管理者联盟  开课城市:北京 开课时间:2014年10月12日 面向对象 各类科技与研发.IT软件与通信.工程与设计等项目导向型企业的各级管理人员与项目管理人员.项目经理与技术经理,有志于成长为项目经理的优秀工程师与技术骨干. 课程优势 l 十年美国项目管理学会全球教育合作伙伴(Global R.E.P. No. 3254),2003年开始PMP培训,课程质量业界认可,服务专业.专注. l 国内最强大的PMP专家团队.主讲老师具

2016年12月主要银行最新定期存款利率表一览

中国银行定期存款利率调整 央行新出政策,小编在百度里面搜索银行二字,除了银行新规外,很多人还对12月最新银行利率感兴趣.那么,随着央行政策的发布,银行存款利率是否也随着发生了变动呢?央行此次降准.降息后,最新的定期存款利率是多少?钱存在哪家银行最划算? 自2015年10月24日起,将下调金融机构人民币贷款和存款基准利率,为进一步降低社会融资成本.其中,金融机构一年期的贷款基准利率下调0.25个百分点至4.35%;一年期的存款基准利率下调0.25个百分点至1.5%.同时,对商业银行和农村合作金融机

12月第3周网络安全报告:发现放马站点域名131个

IDC评述网(idcps.com)12月29日报道:根据CNCERT抽样监测结果和国家信息安全漏洞共享平台(CNVD)发布的数据得悉,在12月第3周(2015-12-14至2015-12-20)期间,我国互联网网络安全指数整体评价为良. 下面,请与IDC评述网一同关注在12月14日至12月20日期间,我国互联网网络安全状况: (图1)12月第3周网络安全基本态势图 观察图1,可知在12月第3周,我国互联网网络安全指数整体评价为良.其中,境内感染病毒的主机数量为55.6万个,较上周上升1.5%:境

2015年12月全球浏览器份额:IE份额首次跌破50%

IDC评述网(idcps.com)01月08日报道:根据市场研究公司Net Applications最新数据显示,在2015年12月全球浏览器市场上,霸主IE份额跌至48.57%,环比11月下降1.46%,降幅增大明显.而亚军Chrome份额持续上涨,较11月增加0.92%,升至32.33%.接下来,请与IDC评述网一同关注相关数据情况. (图1)12月全球浏览器市场份额分布图 如图1所示,在2015年12月,全球浏览器市场份额大战中,IE与Chrome稳居前二,份额依次是48.57%.32.3

我的Python成长之路---第一天---Python基础(作业1:登录验证)---2015年12月26日(雾霾)

1 #!/usr/bin/env python3 2 # coding:utf-8 3 ''' 4 Created on: 2015年12月29日 5 6 @author: 张晓宇 7 8 Email: [email protected] 9 10 Version: 1.0 11 12 Description: 输入用户名密码,认证成功显示欢迎信息,认证失败,输错三次后锁定 13 14 Help: 15 ''' 16 import os 17 # 定义用户信息写入函数,用于把用户信息写回文件 1

12月不良与垃圾信息:垃圾邮件环比下降7.6%

IDC评述网(idcps.com)01月29日报道:近日,工业和信息化12321网络不良与垃圾信息举报受理中心发布了<2014年12月举报受理情况月报>.根据报告显示,12月份,12321举报中心共收到不良与垃圾信息举报189,340件次,环比上月减少30,581件次.其中,垃圾邮件举报7,369件次:互联网不良网站21,473件次等.接下来,请看IDC评述网整理的相关数据分析: 1. 垃圾邮件举报情况 12月份共收到垃圾邮件的举报7,369件次,与上月对比,下降了7.6%.其中,中文垃圾邮件

12月第1周.BIZ域名总量TOP10:仅中德澳3国持续上涨

IDC评述网(idcps.com)12月15日报道:根据WebHosting.info最新数据显示,在12月第1周全球.BIZ域名总量十强排行榜中,仅中国.德国与澳大利亚成功上涨,与上周对比,可知它们延续了上周的上涨状态.其中,中国的.BIZ域名总量净增1,574个,涨幅缩小.接下来,请与IDC评述网一同关注相关具体数据. (图1)12月第1周全球各国家.BIZ域名总量排行榜TOP10 根据图1,可知在12月第1周全球.BIZ域名总量十强排行榜中,排名顺序与上周对比,无变化,依次是美国.日本.德

新网互联域名总量28.6万个:12月上旬份额仅为3%

IDC评述网(idcps.com)12月25日报道:据WebHosting.info最新数据显示,截止至2014年12月15日,新网互联域名总量下跌至286,345个.在12月上旬期间(2014-12-02至2014-12-15),降速逐渐减缓,共净减1,049个.而国内份额也随之缩小,为3.1236%. (图1)12月上旬新网互联域名注册量走势 观察图1,可知在12月上旬,新网互联域名总量呈下降趋势,但每周的降速有所减缓.接下来,请看IDC评述网对数据的详细分析. (图2)新网互联域名总量增长