PhotoLibraryPicker
一个围绕 UIImagePickerController 的基本包装,简化了展示相册/相机选择器。
入门
使用 CocoaPods 安装
pod 'PhotoLibraryPicker'
使用 Carthage 安装
github "phillfarrugia/PhotoLibraryPicker"
使用 Swift Package Manager 安装
import PackageDescription
let package = Package(
name: "HelloWorld",
dependencies: [
.Package(url: "https://github.com/phillfarrugia/PhotoLibraryPicker.git", majorVersion: 1, minor: 0)
]
)
使用说明
class ViewController: UIViewController {
// Instantiate a PhotoLibraryPicker
let imagePickerHandler = PhotoLibraryPicker()
override func viewDidLoad() {
super.viewDidLoad()
// Present Photo Library Picker
imagePickerHandler.presentLibraryPicker(fromViewController: self) { (result) in
switch result {
case let .completed(asset):
handleAsset(asset)
case .cancelled:
handleCancellation()
}
}
}
}
照片库
通过调用presentLibraryPicker(fromViewController:completion:)
方法显示照片库选择器(允许用户从相册或相片中选择照片或视频),并传入用于显示的视图控制器以及用户选择资源后要调用的完成处理程序。
相机
通过调用presentCameraPicker(fromViewController:completion:)
方法显示相机选择器(允许用户从相机中拍照或录视频),并传入用于显示的视图控制器以及用户捕获照片或视频后要调用的完成处理程序。
处理结果
照片库选择器和相机选择器的结果都封装在PhotoLibraryPickerResult
枚举中(请参阅Swift中结果类型的威力),可以是cancelled
——表示用户已取消选择照片或视频;或者completed
——用户已选择了一个作为关联值的资源。
资源
用户选择的照片或视频表示为包含资产类型(《图像》,或《视频》)和来源(《相册》,或《相机》)的PhotoLibraryAsset
结构。
致谢
PhotoLibraryPicker是由Phill Farrugia创建的。
最初它是为了在一个私人项目中使用而创建的,然后开源以鼓励拆解和复用,同时也是为了推广开源软件,构建模块化可复用框架。
许可证
PhotoLibraryPicker采用MIT许可证。更多信息请参阅LICENSE文件。