我的代码是这样的:
oldPicker = [[UIImagePickerController alloc] init];
if([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypePhotoLibrary])
{
oldPicker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
oldPicker.mediaTypes = [UIImagePickerController availableMediaTypesForSourceType:oldPicker.sourceType];
}
oldPicker.delegate = self;
oldPicker.allowsEditing = NO;
[self presentViewController:oldPicker animated:YES completion:nil];
效果是当我点击按钮时,它会显示选择视图的相册,但我只想跳过相册选择视图并直接显示“所有照片”相册。
我尝试将sourceType
设置为UIImagePickerControllerSourceTypeSavedPhotosAlbum
,但它会向我显示“Moments”专辑但不会显示“All Photos”专辑
答案 0 :(得分:3)
使用UIImagePickerController
无法做到这一点。
UIImagePickerControllerSourceType
只有3个值。
enum { UIImagePickerControllerSourceTypePhotoLibrary, UIImagePickerControllerSourceTypeCamera, UIImagePickerControllerSourceTypeSavedPhotosAlbum }; typedef NSUInteger UIImagePickerControllerSourceType;
<强>常量强>
UIImagePickerControllerSourceTypePhotoLibrary
指定设备的照片库作为图像选择器控制器的源。
UIImagePickerControllerSourceTypeCamera
指定设备的内置摄像头作为图像选择器控制器的源。指出您想要的特定相机(正面或 通过使用cameraDevice属性,后面,可用)。
UIImagePickerControllerSourceTypeSavedPhotosAlbum
指定设备的相机胶卷相册作为图像选择器控制器的来源。如果设备没有摄像头, 指定已保存的照片相册作为来源。
因此,为了实现您提到的场景,您需要编写自己的图像选择器。有可用的自定义控件,您也可以检查CTAssetsPickerController