UIimagepicker控制器图像只选择

时间:2010-10-07 05:44:28

标签: iphone image uiimagepickercontroller

我必须提供用户选择照片的功能。我用过这个:

ipc.sourceType =  UIImagePickerControllerSourceTypePhotoLibrary;

现在我必须限制用户只选择照片,我希望视频不会显示在列表中。或者某种程度上用户不应该选择视频。如何实现?

3 个答案:

答案 0 :(得分:18)

基本上你要做的就是设置“媒体类型”。幸运的是,imagePicker只有一个名为“mediaTypes”的属性。 :)接收一系列媒体类型以供选择。

幸运的是,这是ImagePicker的默认行为,只显示图像类型。

但是如果你真的想确保你能做到这一点:

[imagePicker setMediaTypes: [NSArray arrayWithObject:kUTTypeImage]];

并且不要忘记在文件的顶部添加...:)

#import <MobileCoreServices/UTCoreTypes.h>

但实际上,我认为当他们说苹果是默认行为时我们可以信任苹果......:)

答案 1 :(得分:17)

在向NSArray添加kUTTypeImage时,您将收到有关不兼容指针类型(至少在XCode 4中)的编译器警告。但是,kUTTypeImage是CFStringRef,根据CFString文档,CFStringRef与NSString *兼容。因此,为了使编译器满意,将kUTTypeImage强制转换为NSString *:

picker.mediaTypes = [NSArray arrayWithObject:(NSString *)kUTTypeImage];

答案 2 :(得分:2)

UIImagePickerController默认只为image。只需避免指定媒体类型,它将仅显示要选择的图像。