2010-10-07 13 views
8

Tengo que dar funcionalidad para seleccionar fotos por el usuario. He utilizado este:UIimagepicker controlador imagen solo selección

ipc.sourceType = UIImagePickerControllerSourceTypePhotoLibrary; 

ahora tengo que restringir usuario seleccionar sólo las fotos y quiero videos para ser no aparecen en la lista. O de alguna manera el usuario no debe seleccionar video en absoluto. ¿Cómo lograr eso?

Respuesta

18

básicamente lo que estás tratando de hacer es establecer los "tipos de medios". y afortunadamente para ti imagePicker tiene una propiedad solo para eso llamada "mediaTypes". :) que recibe una variedad de tipos de medios para mostrar para su selección.

incluso afortunadamente-er este es el comportamiento predeterminado de ImagePicker es mostrar solo los tipos de imagen.

pero si realmente quiere asegurarse de que usted puede hacer esto:

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

y no se olvide de añadir en la parte superior del archivo ... :)

#import <MobileCoreServices/UTCoreTypes.h> 

pero realmente, creo que podemos confiar en Apple cuando dicen que es su comportamiento predeterminado ... :)

+4

También necesitará vincular MobileCoreServices.framework 'targets> build phases> link binary with libraries> +> MobileCoreServices.framework' –

17

Obtendrá una advertencia del compilador sobre los tipos de puntero incompatibles (al menos en XCode 4) al agregar kUTTypeImage a un NSArray. Sin embargo, kUTTypeImage es un CFStringRef, y de acuerdo con la documentación de CFString, un CFStringRef es compatible con NSString *. Por lo tanto, para que el compilador feliz, fundido kUTTypeImage a un NSString *:

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

Muchas gracias, profundizar en esas cosas lleva algo de tiempo ... –

1

defecto UIImagePickerController a única imagen. Solo evite especificar tipos de medios; solo mostrará imágenes para seleccionar.

Cuestiones relacionadas