iOS從系統(tǒng)相冊(cè)選取多張照片示例代碼
之前寫(xiě)過(guò)UIImagePickerController調(diào)取系統(tǒng)相冊(cè)圖片(選取單張照片,多用于用戶頭像)
1.pod導(dǎo)入
pod 'CTAssetsPickerController'
2.添加頭文件
#import <CTAssetsPickerController/CTAssetsPickerController.h>
3.添加delegate
<CTAssetsPickerControllerDelegate>
4.實(shí)現(xiàn)
- (void)upLoading {
[PHPhotoLibraryrequestAuthorization:^(PHAuthorizationStatus status){
if (status !=PHAuthorizationStatusAuthorized)return;
dispatch_async(dispatch_get_main_queue(), ^{
CTAssetsPickerController *picker = [[CTAssetsPickerControlleralloc] init];
picker.delegate =self;
// 顯示選擇的索引
picker.showsSelectionIndex =YES;
// 設(shè)置相冊(cè)的類型:相機(jī)膠卷 +自定義相冊(cè)
picker.assetCollectionSubtypes =@[
@(PHAssetCollectionSubtypeSmartAlbumUserLibrary),
@(PHAssetCollectionSubtypeAlbumRegular)];
// 不需要顯示空的相冊(cè)
picker.showsEmptyAlbums =NO;
[selfpresentViewController:pickeranimated:YEScompletion:nil];
});
}];
}
-(BOOL)assetsPickerController:(CTAssetsPickerController *)picker shouldSelectAsset:(PHAsset *)asset
{
NSInteger max =9;
if (picker.selectedAssets.count >= max) {
UIAlertController *alert = [UIAlertControlleralertControllerWithTitle:@"提示"message:[NSStringstringWithFormat:@"最多選擇%zd張圖片", max] preferredStyle:UIAlertControllerStyleAlert];
[alert addAction:[UIAlertActionactionWithTitle:@"好的"style:UIAlertActionStyleDefaulthandler:nil]];
[picker presentViewController:alertanimated:YEScompletion:nil];
// 這里不能使用self來(lái)modal別的控制器,因?yàn)榇藭r(shí)self.view不在window上
returnNO;
}
returnYES;
}
-(void)assetsPickerController:(CTAssetsPickerController *)picker didFinishPickingAssets:(NSArray *)assets
{
NSArray *array =NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,YES);
NSString *documents = [arraylastObject];
NSString *documentPath = [documentsstringByAppendingPathComponent:@"arrayXML.xml"];
NSArray *dataArray = [NSArrayarrayWithArray:assets];
[dataArray writeToFile:documentPathatomically:YES];
NSArray *resultArray = [NSArrayarrayWithContentsOfFile:documentPath];
NSLog(@"%@", documentPath);
// 關(guān)閉圖片選擇界面
[picker dismissViewControllerAnimated:YEScompletion:nil];
// 遍歷選擇的所有圖片
self.plCollection.photoArray = assets;
for (NSInteger i =0; i < assets.count; i++) {
// 基本配置
CGFloat scale = [UIScreenmainScreen].scale;
PHImageRequestOptions *options = [[PHImageRequestOptionsalloc] init];
options.resizeMode =PHImageRequestOptionsResizeModeExact;
options.deliveryMode =PHImageRequestOptionsDeliveryModeHighQualityFormat;
PHAsset *asset = assets[i];
CGSize size =CGSizeMake(asset.pixelWidth / scale, asset.pixelHeight / scale);
// // 獲取圖片
[[PHImageManagerdefaultManager] requestImageForAsset:assettargetSize:size contentMode:PHImageContentModeDefaultoptions:options resultHandler:^(UIImage *_Nullable result,NSDictionary *_Nullable info) {
NSData *imageData =UIImageJPEGRepresentation([selfimageWithImageSimple:resultscaledToSize:CGSizeMake(200,200)], 0.5);
[selfossUpload:imageData];
}];
}
}
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
IOS 遠(yuǎn)程通知兼容(IOS7,IOS8)實(shí)例詳解
這篇文章主要介紹了IOS 遠(yuǎn)程通知兼容(IOS7,IOS8)實(shí)例詳解的相關(guān)資料,需要的朋友可以參考下2017-03-03
IOS開(kāi)發(fā)中異步網(wǎng)絡(luò)請(qǐng)求上實(shí)現(xiàn)同步邏輯
這篇文章主要介紹了IOS開(kāi)發(fā)中異步網(wǎng)絡(luò)請(qǐng)求上實(shí)現(xiàn)同步邏輯的相關(guān)資料,需要的朋友可以參考下2017-03-03
IOS開(kāi)發(fā)壓縮后圖片模糊問(wèn)題解決
這篇文章主要為大家介紹了IOS開(kāi)發(fā)壓縮后圖片模糊問(wèn)題解決實(shí)例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-07-07
詳解iOS App中UITableView的創(chuàng)建與內(nèi)容刷新
這篇文章主要介紹了iOS App中UITableView的創(chuàng)建與內(nèi)容刷新,講解了UITableView一些基本的樣式與cell的設(shè)置及刷新,需要的朋友可以參考下2016-04-04
iOS13即將到來(lái),iOS推送DeviceToken適配方案詳解
這篇文章主要介紹了iOS13即將到來(lái),iOS推送DeviceToken適配方案詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-09-09
iOS開(kāi)發(fā)藍(lán)牙技術(shù)應(yīng)用增加無(wú)線連接功能
這篇文章主要為大家介紹了iOS開(kāi)發(fā)藍(lán)牙技術(shù)應(yīng)用增加無(wú)線連接功能示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-02-02
iOS如何優(yōu)雅地實(shí)現(xiàn)序列動(dòng)畫(huà)詳解
這篇文章主要給大家介紹了關(guān)于iOS如何優(yōu)雅地實(shí)現(xiàn)序列動(dòng)畫(huà)的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2018-12-12

