MTImagePicker
一个类似于微信的多图和视频选择器,兼容 iOS7+。您可以通过设置 MTImagePickerController
的来源使用 ALAssetsLibrary
或 Photos framework
。
示例
要求
- iOS7.0+
- 在 Xcode 9.2 Swift 4.0 上编译成功
安装
MTImagePicker
中没有其他依赖。建议将MTImagePicker/MTImagePicker
文件夹简单拖动到您的项目中。- MTImagePicker 也通过 CocoaPods 提供。但是,在 Swift 项目中使用 CocoaPod 需要动态框架,因此需要 iOS 8.0 以上版本。要安装它,只需将以下行添加到您的 Podfile 中:
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '8.0'
use_frameworks!
pod 'MTImagePicker', '~> 3.0.2'
使用方法
- MTImagePicker 与
UIImagePickerController
类似。可以使用下面在示例中类似的代码轻松使用图片选择器。
let imagePicker = MTImagePickerController.instance
imagePicker.mediaTypes = [MTImagePickerMediaType.Photo,MTImagePickerMediaType.Video]
imagePicker.imagePickerDelegate = self
imagePicker.maxCount = 10 // max select count
imagePicker.defaultShowCameraRoll = true // when set to true would show Camera Roll Album like WeChat by default.
- 您可以通过设置
MTImagePickerController
的源来使用ALAssetsLibrary
或Photos framework
。
//default is MTImagePickerSource.ALAsset
imagePicker.source = MTImagePickerSource.ALAsset
//imagePicker.source = MTImagePickerSource.Photos (Work on iOS8+)
- 调用
presentViewController
。
self.presentViewController(imagePicker, animated: true, completion: nil)
- 根据
source
实现委托方法。
@objc protocol MTImagePickerControllerDelegate:NSObjectProtocol {
// Implement it when setting source to MTImagePickerSource.ALAsset
optional func imagePickerController(picker:MTImagePickerController, didFinishPickingWithAssetsModels models:[MTImagePickerAssetsModel])
// Implement it when setting source to MTImagePickerSource.Photos
@available(iOS 8.0, *)
optional func imagePickerController(picker:MTImagePickerController, didFinishPickingWithPhotosModels models:[MTImagePickerPhotosModel])
optional func imagePickerControllerDidCancel(picker: MTImagePickerController)
}
待办事项
添加相册选择支持。完成。