相机与相册的调用:1-UIImagePickerController简介
在App开发时,当我们需要调用摄像头拍照或者希望从相册中选择一张照片时,都可以使用UIImagePickerController类来完成。UIImagePickerController类把从iOS设备中获取图片的操作进行了统一封装,使用图片来源来进行区分,也就是说: 不论从摄像头拍照获取图片,还是从相册中选取图片,区别仅仅在于获取图片的渠道或方式不同,其他对图片的处理都是统一的。
UIImagePickerController类常用属性与方法
UIImagePickerController类中提供了用于图片选择的相关属性以及方法,同时定义了UIImagePickerControllerDelegate代理协议,可以用于监测用户选择图片的行为动作。UIImagePickerController类中,如下属性和方法需要重点掌握。
- 图片获取来源,默认为照片库。UIImagePickerControllerSourceType的取值有三个,分别为UIImagePickerControllerSourceTypePhotoLibrary(照片库)、UIImagePickerControllerSourceTypeCamera(相机)、UIImagePickerControllerSourceTypeSavedPhotosAlbum(相册)。
@property(nonatomic) UIImagePickerControllerSourceType sourceType;
- 设置当拍照完或在相册选完照片后,是否允许编辑图像。
@property(nonatomic) BOOL allowsEditing;
- 可对图像或者照相机模式进行进一步操作设置的代理。
@property(nullable,nonatomic,weak) id <UINavigationControllerDelegate, UIImagePickerControllerDelegate> delegate;
- 判断设备是否支持照相机/图片库/相册功能。
+ (BOOL)isSourceTypeAvailable:(UIImagePickerControllerSourceType)sourceType;
UIImagePickerControllerDelegate代理协议
UIImagePickerControllerDelegate代理协议中提供了用户选择图片后的回调方法,在回调方法中可以获取到用户选择的图片,从而可以进行进一步的处理。
- 用户完成图片选择后调用。在该方法的参数info中我们可以获取到用户选择的图片信息。由于参数info是一个字典,因此在UIImagePickerController类中定义了相关的键值名称用于获取对应的值,例如,通过UIImagePickerControllerOriginalImage键即可获取到用户选择的原始图片。
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary<NSString *,id> *)info;
- 用户取消选择后调用。
- (void)imagePickerControllerDidCancel:(UIImagePickerController *)picker;
文章发布时间为: December 7th , 2016 at 11:53 am
最后编辑时间为: September 15th , 2017 at 08:13 am
本文由 99ios 创作,转载请注明出处
最后编辑时间为: September 15th , 2017 at 08:13 am
本文由 99ios 创作,转载请注明出处