描述
OpalImagePicker 是一个使用 Swift 编写的 iOS 多选图片选择器。旨在作为 UIImagePickerController 的替换。兼容 Swift 和 Objective-C。
Swift 4 和 5 兼容性
- Swift 5.0: >= 2.1.0 - 最新为 2.1.0 下载此处.
- Swift 4.2: >= 2.0.0 - 最新为 2.0.0 下载此处.
- Swift 4.0: >= 1.5.0 - 最新为 1.7.1 下载此处. CocoaPods 确保要修复发行版(
pod 'OpalImagePicker', '~> 2.1.0'
)
用法
OpalImagePicker 的呈现方式类似于 UIImagePickerController。作为一个普通视图控制器。
let imagePicker = OpalImagePickerController()
presentOpalImagePickerController(imagePicker, animated: true,
select: { (assets) in
//Select Assets
}, cancel: {
//Cancel
})
或
let imagePicker = OpalImagePickerController()
imagePicker.imagePickerDelegate = self
present(imagePicker, animated: true, completion: nil)
OpalImagePicker 有三个委托方法来通知您图片已被选择,或者选择器已被取消。仅在您选择不使用 presentOpalImagePickerController(_:animated:select:cancel:completion:) 函数时才是必要的。
optional func imagePicker(_ picker: OpalImagePickerController, didFinishPickingAssets assets: [PHAsset])
optional func imagePickerDidCancel(_ picker: OpalImagePickerController)
OpalImagePicker 还允许您使用外部图像。例如,您可能希望使用来自 Facebook、Instagram 或 Twitter 的图像。您可以使用以下方法中的任何一种来完成此操作,或者使用 Swift presentOpalImagePickerController(_: animated: maximumSelectionsAllowed: numberOfExternalItems: externalItemsTitle: externalURLForIndex: selectAssets: selectExternalURLs: cancel: completion:) 函数。
optional func imagePickerNumberOfExternalItems(_ picker: OpalImagePickerController) -> Int
optional func imagePicker(_ picker: OpalImagePickerController, imageURLforExternalItemAtIndex index: Int) -> URL?
optional func imagePickerTitleForExternalItems(_ picker: OpalImagePickerController) -> String
optional func imagePicker(_ picker: OpalImagePickerController, didFinishPickingExternalURLs urls: [URL])
OpalImagePicker 支持用户自定义用户界面功能。
let imagePicker = OpalImagePickerController()
//Change color of selection overlay to white
imagePicker.selectionTintColor = UIColor.white.withAlphaComponent(0.7)
//Change color of image tint to black
imagePicker.selectionImageTintColor = UIColor.black
//Change image to X rather than checkmark
imagePicker.selectionImage = UIImage(named: "x_image")
//Change status bar style
imagePicker.statusBarPreference = UIStatusBarStyle.lightContent
//Limit maximum allowed selections to 5
imagePicker.maximumSelectionsAllowed = 5
//Only allow image media type assets
imagePicker.allowedMediaTypes = Set([PHAssetMediaType.image])
//Change default localized strings displayed to the user
let configuration = OpalImagePickerConfiguration()
configuration.maximumSelectionsAllowedMessage = NSLocalizedString("You cannot select that many images!", comment: "")
imagePicker.configuration = configuration
安装
OpalImagePicker 通过 CocoaPods 提供。要安装,只需将以下行添加到您的 Podfile 中。
pod 'OpalImagePicker'
要求
- iOS 8.0+
- Xcode 9.0+
- Swift 4 到 5.0
作者
OpalOrange 使用
贡献
我们希望您为 OpalImagePicker 贡献。
许可证
OpalImagePicker 可在 MIT 许可下获得。有关更多信息,请参阅 LICENSE 文件。