我有一个用于将图像上传到数据库的 UIImagePickerController。它从两个来源加载照片,相机和相机胶卷。当我从相机加载照片时,它允许我拍照并选择是否要重拍照片或使用它。当我从相机胶卷加载照片时,我可以选择我想要使用的照片库,但只能获得库中所有照片的平铺预览。当我点击平铺照片预览时,它会自动加载到数据库中,没有完整预览。我怎样才能做到,当我从相机胶卷加载照片时,它允许我在使用它之前预览图像,就像它从相机加载的方式一样?这是我用来指定 UIImagePickerController 类型、数据源和初始设置的 coe。
UIImagePickerController *imgPicker = [[UIImagePickerController alloc] init];
imgPicker.delegate = self;
imgPicker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
[self presentViewController:imgPicker animated:YES completion:nil];
最佳答案
你有两个选择:
- 您可以使用
allowsEditing
属性,将其设置为YES
,最后一步将是所选照片的“预览”。当然,用户可以移动和缩放该预览中的照片,所以这可能不是您想要的。 - 编写自己的预览代码。这将是一个简单的 View Controller ,当用户从图库中选择照片时,您会将其推送到
UIImagePickerController
中。最简单的解决方案就是一个覆盖所有屏幕的 UIImageView,以及导航栏中的两个按钮,用于选择另一张照片或选择预览的照片。
关于使用相机胶卷照片前的 IOS 图像预览,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17254978/