XMNPhotoPickerFramework - 一款圖片,視頻選擇類庫
XMNPhotoPickerKit
一款圖片,視頻選擇類庫
1. 預覽
2. 功能
- 一款圖片,視頻選擇類庫
- 支持直接顯示相冊選擇
- 支持類似QQ方式Sheet選擇
- iOS8+支持動態監測PhotoLibrary變化
- 支持預覽圖片,預覽視頻
3. 使用方法
- 命令行下
git clone https://github.com/ws00801526/XMNPhotoPickerFramework.git - 拖動
XMNPhotoPickerFramework到你的工程內 - 導入頭文件
XMNPhotoPickerFramework.h即可 - 具體用法,請參考demo
3.1 直接顯示相冊
- (void)_showPhotoPickerC {
//1.初始化一個XMNPhotoPickerController
XMNPhotoPickerController *photoPickerC = [[XMNPhotoPickerController alloc] initWithMaxCount:9 delegate:nil];
//3.取消注釋下面代碼,使用代理方式回調,代理方法參考XMNPhotoPickerControllerDelegate
// photoPickerC.photoPickerDelegate = self;
//3..設置選擇完照片的block 回調
__weak typeof(*&self) wSelf = self;
[photoPickerC setDidFinishPickingPhotosBlock:^(NSArray<UIImage *> *images, NSArray<XMNAssetModel *> *assets) {
__weak typeof(*&self) self = wSelf;
NSLog(@"picker images :%@ \n\n assets:%@",images,assets);
//!!!如果需要自定義大小的圖片 使用下面方法
// [[XMNPhotoManager sharedManager] getThumbnailWithAsset:<# asset in assets #> size:<# your size #> completionBlock:^(UIImage * _Nullable image) {
//
// }];
self.assets = [assets copy];
[self.collectionView reloadData];
//XMNPhotoPickerController 確定選擇,并不會自己dismiss掉,需要自己dismiss
[self dismissViewControllerAnimated:YES completion:nil];
}];
//4.設置選擇完視頻的block回調
[photoPickerC setDidFinishPickingVideoBlock:^(UIImage *coverImage, XMNAssetModel * asset) {
__weak typeof(*&self) self = wSelf;
NSLog(@"picker image :%@\n\n asset:%@\n\n",coverImage,asset);
self.assets = @[asset];
[self.collectionView reloadData];
//XMNPhotoPickerController 確定選擇,并不會自己dismiss掉,需要自己dismiss
[self dismissViewControllerAnimated:YES completion:nil];
}];
//5.設置用戶取消選擇的回調 可選
[photoPickerC setDidCancelPickingBlock:^{
NSLog(@"photoPickerC did Cancel");
//此處不需要自己dismiss
}];
//6. 顯示photoPickerC
[self presentViewController:photoPickerC animated:YES completion:nil];
} 3.2 顯示XMNPhotoPicker
- (void)_showPhotoPicker {
//1. 推薦使用XMNPhotoPicker 的單例
//2. 設置選擇完照片的block回調
[[XMNPhotoPicker sharePhotoPicker] setDidFinishPickingPhotosBlock:^(NSArray<UIImage *> *images, NSArray<XMNAssetModel *> *assets) {
NSLog(@"picker images :%@ \n\n assets:%@",images,assets);
self.assets = [assets copy];
[self.collectionView reloadData];
}];
//3. 設置選擇完視頻的block回調
[[XMNPhotoPicker sharePhotoPicker] setDidFinishPickingVideoBlock:^(UIImage * image, XMNAssetModel *asset) {
NSLog(@"picker video :%@ \n\n asset :%@",image,asset);
self.assets = @[asset];
[self.collectionView reloadData];
}];
//4. 顯示XMNPhotoPicker
[[XMNPhotoPicker sharePhotoPicker] showPhotoPickerwithController:self animated:YES];
} 4.相關類說明 : 傳送門
5. 感謝
本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!

