美文网首页
Swift 照片/视频选择器

Swift 照片/视频选择器

作者: 枫叶丶 | 来源:发表于2021-08-07 15:49 被阅读0次
    界面快照

    项目链接

    功能

    功能简介

    要求

    • iOS 12.0+
    • Xcode 12.0+
    • Swift 5.4+

    安装

    Swift Package Manager

    ⚠️ 需要 Xcode 12.0 及以上版本来支持资源文件/本地化文件的添加。

    dependencies: [
        .package(url: "https://github.com/SilenceLove/HXPHPicker.git", .upToNextMajor(from: "1.2.3"))
    ]
    

    CocoaPods

    将下面内容添加到 Podfile,并执行依赖更新。

    pod 'HXPHPicker'
    

    Carthage

    将下面内容添加到 Cartfile,并执行依赖更新。

    github "SilenceLove/HXPHPicker"
    

    使用方法

    我们在 Wiki 中提供了更详细的使用说明。

    准备工作

    按需在你的 Info.plist 中添加以下键值:

    Key 备注
    NSPhotoLibraryUsageDescription 允许访问相册
    NSPhotoLibraryAddUsageDescription 允许保存图片至相册
    PHPhotoLibraryPreventAutomaticLimitedAccessAlert 设置为 YES iOS 14+ 以禁用自动弹出添加更多照片的弹框(已适配 Limited 功能,可由用户主动触发,提升用户体验)
    NSCameraUsageDescription 允许使用相机
    NSMicrophoneUsageDescription 允许使用麦克风

    快速上手

    import HXPHPicker
    
    class ViewController: UIViewController {
    
        func presentPickerController() {
            // 设置与微信主题一致的配置
            let config = PhotoTools.getWXPickerConfig()
            let pickerController = PhotoPickerController(picker: config)
            pickerController.pickerDelegate = self
            // 当前被选择的资源对应的 PhotoAsset 对象数组
            pickerController.selectedAssetArray = selectedAssets 
            // 是否选中原图
            pickerController.isOriginal = isOriginal
            present(pickerController, animated: true, completion: nil)
        }
    }
    
    extension ViewController: PhotoPickerControllerDelegate {
        
        /// 选择完成之后调用
        /// - Parameters:
        ///   - pickerController: 对应的 PhotoPickerController
        ///   - result: 选择的结果
        ///     result.photoAssets  选择的资源数组
        ///     result.isOriginal   是否选中原图
        func pickerController(_ pickerController: PhotoPickerController, 
                                didFinishSelection result: PickerResult) {
            result.getImage { (image, photoAsset, index) in
                if let image = image {
                    print("success", image)
                }else {
                    print("failed")
                }
            } completionHandler: { (images) in
                print(images)
            }
        }
        
        /// 点击取消时调用
        /// - Parameter pickerController: 对应的 PhotoPickerController
        func pickerController(didCancel pickerController: PhotoPickerController) {
            
        }
    }
    

    更新日志

    版本 发布时间 Xcode Swift iOS
    v1.2.3 2021-10-08 12.5.1 5.4 12.0+

    版权协议

    HXPHPicker 基于 MIT 协议进行分发和使用,更多信息参见协议文件

    相关文章

      网友评论

          本文标题:Swift 照片/视频选择器

          本文链接:https://www.haomeiwen.com/subject/lgbzaftx.html