swift3.0 相册

前端之家收集整理的这篇文章主要介绍了swift3.0 相册前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

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

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

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

2.UIImagePickerControllerSourceType枚举

    
    
  • 1
  • 2
  • 3
  • 4
  • 5
    • 1
    • 2
    • 3
    • 4
    • 5
    public enum UIImagePickerControllerSourceType : Int { case photoLibrary //相册 case camera //相机 case savedPhotosAlbum //保存照片专辑 }

    3.功能实现Demo

        
        
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    //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代理方法

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

    6.打印信息

    猜你在找的Swift相关文章