照片選擇器,使用簡單,幾行代碼就可以完成集成:PhotoPicker

jopen 9年前發布 | 35K 次閱讀 Android開發 移動開發 PhotoPicker

PhotoPicker

用于發表圖片時候選擇相冊圖片和拍照這樣的需求,雖然網上也有很多類似的控件,寫的挺不錯的,但是深入使用就有些問題,還是自己寫算了;網上的一些輪子看起來好像能用,但深入之后總是沒那么完善需要改了各種測試,用到自己項目里面需要費點時間;再加上定制化和兼容問題,和后期考慮的一些需求,就更應該自己開個坑了。

目前這個控件自己用起來非常簡單,就幾行代碼+委托就可以了。要做定制化也比較容易,項目為了兼容iOS7,讀取照片使用AssetsLibrary。

布局基本上都是基于Masonry實現,因為項目里面都在用它。

Aaron Swartz

Aaron Swartz

Aaron Swartz

使用方式:

    BoPhotoPickerViewController *picker = [[BoPhotoPickerViewController alloc] init];
    picker.maximumNumberOfSelection = 5;
    picker.multipleSelection = YES;
    picker.assetsFilter = [ALAssetsFilter allPhotos];
    picker.showEmptyGroups = YES;
    picker.delegate=self;
    picker.selectionFilter = [NSPredicate predicateWithBlock:^BOOL(id evaluatedObject, NSDictionary *bindings) {
        return YES;
    }];

    [self presentViewController:picker animated:YES completion:nil];

委托:

#pragma mark - BoPhotoPickerProtocol
-(void)photoPickerDidCancel:(BoPhotoPickerViewController *)picker{
    [picker dismissViewControllerAnimated:YES completion:nil];
}

-(void)photoPicker:(BoPhotoPickerViewController *)picker didSelectAssets:(NSArray *)assets{
}

-(void)photoPicker:(BoPhotoPickerViewController *)picker didSelectAsset:(ALAsset *)asset{
    NSLog(@"%s",__func__);
}

-(void)photoPicker:(BoPhotoPickerViewController *)picker didDeselectAsset:(ALAsset *)asset{
    NSLog(@"%s",__func__);
}

-(void)photoPickerDidMaximum:(BoPhotoPickerViewController *)picker{
    NSLog(@"%s",__func__);
}

-(void)photoPickerDidMinimum:(BoPhotoPickerViewController *)picker{
    NSLog(@"%s",__func__);
}

-(void)photoPickerTapAction:(BoPhotoPickerViewController *)picker{
}

項目主頁:http://www.baiduhome.net/lib/view/home/1446710103732

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!