代码语言:javascript复制
// 在需要的地方调用下面方法 可是是button 也可以是imageView添加手势等
- (void)choosePhotos{
UIAlertController *alert= [UIAlertController alertControllerWithTitle:nil message:nil preferredStyle:UIAlertControllerStyleActionSheet];
UIAlertAction *sureAction = [UIAlertAction actionWithTitle:@"相册" style:UIAlertActionStyleDefault handler:^(UIAlertAction *action) {
UIImagePickerController *picker = [[UIImagePickerController alloc] init];
picker.delegate = self;
picker.allowsEditing = YES;
picker.sourceType = UIImagePickerControllerSourceTypeSavedPhotosAlbum;
[self presentViewController:picker animated:YES completion:nil];
}];
UIAlertAction *cameraAction = [UIAlertAction actionWithTitle:@"相机" style:UIAlertActionStyleDefault handler:^(UIAlertAction *action) {
UIImagePickerController *camera = [[UIImagePickerController alloc] init];
camera.delegate = self;
camera.allowsEditing = YES;
if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera])
{
camera.sourceType = UIImagePickerControllerSourceTypeCamera;
}
else
{
NSLog( @"摄像头不可用");
return;
}
camera.cameraCaptureMode = UIImagePickerControllerCameraCaptureModePhoto;
[self presentViewController:camera animated:YES completion:nil];
}];
UIAlertAction *cancelAction = [UIAlertAction actionWithTitle:@"取消" style:UIAlertActionStyleCancel handler:^(UIAlertAction *action) {
}];
[alert addAction:sureAction];
[alert addAction:cancelAction];
[alert addAction:cameraAction];
[self presentViewController:alert animated:YES completion:nil];
}
//相册代理方法
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary<NSString *,id> *)info{
//参数UIImagePickerControllerEditedImage 是否裁剪
UIImage *image = info[UIImagePickerControllerEditedImage];
// image 就是我们选择的照片,可以展示,可以上传
[picker dismissViewControllerAnimated:YES completion:nil];
}
相机界面不显示中文问题: 在info.plist 添加Localizations 选择Chinese(simplified) 即可