Colección de citas famosas - Colección de firmas - Cómo crear un UIImagePickerController personalizado con imagen de pantalla completa ios

Cómo crear un UIImagePickerController personalizado con imagen de pantalla completa ios

UIImagePickerController es una interfaz proporcionada por el sistema para obtener imágenes y videos.

El uso de la clase UIImagePickerController para obtener imágenes y videos se puede dividir aproximadamente en los siguientes pasos:

1. Inicialice la clase UIImagePickerController;

2. Establezca el tipo de fuente de datos de la instancia UIImagePickerController (se explica a continuación);

3.

4. Si necesita realizar modificaciones en la imagen, establezca AllowEditing =yes.

Hay tres tipos de fuentes de datos:

enum {

UIImagePickerControllerSourceTypePhotoLibrary , //de la galería

UIImagePickerControllerSourceTypeCamera , // De la cámara

UIImagePickerControllerSourceTypeSavedPhotosAlbum //Del álbum de fotos

};

Al utilizar estas fuentes, es mejor comprobar si los siguientes dispositivos las admiten;

if([UIImagePickerController isSourceTypeAvailable: UIImagePickerControllerSourceTypeCamera])

{

NSLog(@"Support Camera");

}

if ([UIImagePickerController isSourceTypeAvailable: UIImagePickerControllerSourceTypePhotoLibrary])

{

NSLog(@"biblioteca de soporte");

}

if ([ UIImagePickerController isSourceTypeAvailable: UIImagePickerControllerSourceTypeSavedPhotosAlbum])

{

NSLog(@"Support Photo Library");

}

Llame al cámara para obtener Recursos

- (void)viewDidLoad {

[super viewDidLoad]

picker = [[UIImagePickerController alloc]init];

picker.view.backgroundColor = [UIColor orangeColor];

UIImagePickerControllerSourceType sourceType = UIImagePickerControllerSourceTypeCamera;

picker.sourceType = sourceType;

picker.delegate = self;

picker.allowsEditing = YES;

}

Lo anterior es solo un ejemplo de UIImagePickerController y sus propiedades, que deben llamarse en una ventana emergente. ventana de inicio cuando necesita obtener la imagen

[self presentViewController: selector animado: SÍ finalización: nil];

También necesitamos un proxy para obtener nuestra imagen seleccionada

UIImagePickerControllerDelegate

Uno de los proxies ***Uno de los tres métodos se abandonó en 3.0, dejando solo dos que necesitamos usar

p>

- (void)imagePickerController: (UIImagePickerController *)picker didFinishPickingMediaWithInfo: (NSDictionary

*)info;

Llamado cuando el usuario completa la selección;

- (void)imagePickerControllerDidCancel: (UIImagePickerController *)picker;

Llamado cuando el usuario cancela la selección;

- (void)imagePickerController: (UIImagePickerController *)picker

didFinishPickingMediaWithInfo: (NSDictionary *)info;

La información seleccionada está en info, que es un diccionario.

Claves en el diccionario:

NSString *const UIImagePickerControllerMediaType; especifica el tipo de medio seleccionado por el usuario (ampliado al final del artículo)

NSString * const UIImagePickerControllerOriginalImage;

NSString *const UIImagePickerControllerEditedImage; imagen modificada

NSString *const UIImagePickerControllerCropRect

NSString *const UIImagePickerControllerMediaURL

NSString *const UIImagePickerControllerReferenceURL; URL original

NSString *const UIImagePickerControllerMediaMetadata Este valor solo es válido cuando la fuente de datos es una cámara

Para obtener más parámetros de UIImagePickerController, consulte aquí.

Para conocer las funciones del proxy, consulte aquí.

UIImagePickerControllerMediaType contiene KUTTypeImage y KUTTypeMovie

KUTTypeImage contiene:

const CFStringRef kUTTypeImage tipo de imagen abstracta

const CFStringRef kUTTypeJPEG;< /p >

const CFStringRef kUTTypeJPEG2000;

const CFStringRef kUTTypeTIFF;

const CFStringRef kUTTypePICT;

const CFStringRef kUTTypeGIF;

const CFStringRef kUTTypePNG;

const CFStringRef kUTTypeQuickTimeImage;

const CFStringRef kUTTypeAppleICNS

const CFStringRef kUTTypeBMP;

const CFStringRef kUTTypeICO;

KUTTypeMovie contiene:

const CFStringRef kUTTypeAudiovisualContent; video de sonido abstracto

const CFStringRef kUTTypeMovie; formato de medios abstractos (sonido y video)

const CFStringRef kUTTypeVideo; video pero sin sonido

const CFStringRef kUTTypeAudio; solo sonido pero sin video

const CFStringRef kUTTypeQuickTimeMovie;

const CFStringRef kUTTypeMPEG;

const CFStringRef kUTTypeMPEG4;

const CFStringRef kUTTypeMP3;

const CFStringRef kUTTypeMPEG4Audio;

const CFStringRef kUTTypeAppleProtectedMPEG4Audio;