zoukankan      html  css  js  c++  java
  • swift3.0调用相册

    swift3.0调用相册首先需要注意:

    1.swift3.0中调用相机和相册会导致崩溃

    1.需要在info.plist文件中加入两个键值对,如下:

    /// 都是String类型,内容任意的字符串即可
    Privacy - Photo Library Usage Description
    Privacy - Camera Usage Description 

    2.UIImagePickerControllerSourceType枚举

    public enum UIImagePickerControllerSourceType : Int {
        case photoLibrary       //相册
        case camera             //相机
        case savedPhotosAlbum   //保存照片专辑
    }

    3.功能实现Demo

    //FIXME: 点击添加图片按钮
    @objc fileprivate func AddPhotoClick(){
        //1.判断照片控制器是否可用 ,不可用返回
        if !UIImagePickerController.isSourceTypeAvailable(.photoLibrary) {
            return
        }
        //2.创建照片控制器
        let picVc = UIImagePickerController()
        //3.设置控制器类型
        picVc.sourceType = .photoLibrary
        //4.设置是否可以管理已经存在的图片或者视频
        picVc.allowsEditing = true
        //5.设置代理
        picVc.delegate = self
        //6.弹出控制器
        present(picVc, animated: true, completion: nil)
    }

    4.UIImagePickerController协议

    1.需要遵循2个协议:

    UIImagePickerControllerDelegate

    UINavigationControllerDelegate

    5.常用imagePickerController代理方法

    // MARK:- UIImagePickerController代理方法
    extension LXRComposeViewController :  UIImagePickerControllerDelegate,UINavigationControllerDelegate{
        func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : Any]) {
            LXRLog(message: info)
        }
    }

    6.打印信息

    这里写图片描述

  • 相关阅读:
    mutt+msmtp实现在shell环境中发送电子邮件
    rsync无密码备份文件的方法
    segemehl 生成sam文件的后续处理——生成methylation table
    ubuntu 14.04 安装VMware虚拟机
    完全用Linux工作
    Ubuntu 与CentOS 6.5 配置单网卡双IP
    How to use Bismark
    How to use segemehl
    Ubuntu 为火狐安装插件
    遇到的问题
  • 原文地址:https://www.cnblogs.com/Free-Thinker/p/6373118.html
Copyright © 2011-2022 走看看